@iiiil

Как исправить двойные символы при вводе в текстовое поле?

Пытаюсь реализовать на vue в связке с element-ui замену русских символов на латинские в соответствии с раскладкой клавиатуры. Грубо говоря, хочу в поле вводить только латиницу с цифрами.

Получилось пока вот это jsfiddle.net/9sd1xbuv/13
Замена происходит, но почему-то добавляется символ, который ввел.

Хотя если в @keypress.native добавить модификатор .prevent вроде как заработает, но тогда валидация не будет работать.

Либо я намудрил, либо может в компоненте что не так?
  • Вопрос задан
  • 151 просмотр
Решения вопроса 1
0xD34F
@0xD34F Куратор тега Vue.js
Вместо keypress обрабатывать следует событие input. Вписывать руками значение (в смысле - через element.value) в элемент не надо, пусть этим v-model занимается. Сама логика замены символов - дико переусложнено, разбирать смысла не вижу. Вот вам исправленный вариант.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы