Я делаю веб-приложение, которое проверяет скорость печати.Предотвращение возврата в текстовое поле ввода
Он дает пользователю текст для ввода текста и поле ввода для ввода. Если пользователь вводит неправильный ключ, я использую preventDefault
в выпуске ключевого события, чтобы предотвратить ввод неправильного символа в поле ввода (вместо этого я покажу пользователю сообщение об ошибке).
Проблема заключается в том, что preventDefault
не препятствует вводу пробелов. В идеале, поскольку неправильные нажатия клавиш никогда не будут введены в текстовое поле, не имеет смысла разрешать обратное перемещение. Если пользователь обычно попадает в обратную сторону по воспринимаемой ошибке, это приводит к тому, что текст в поле ввода становится неправильным. Это не влияет на результаты теста, это не идеальная ситуация.
Как я могу предотвратить обратную позицию в элементах ввода HTML5 типа «текст»?
Вы действительно нуждаетесь в * предотвращении * обратного хода? Другой подход может заключаться в обнаружении, когда это происходит, а затем заменить поле входного элемента на то, что «должно» быть там. – Brandin
@Brandin Мне не нужно *, но я бы хотел. И я это пробовал, но главный обработчик пресса срабатывает * до того, как текст помещается в поле, поэтому я не могу просто заменить ключ с обратным интервалом, так как он не удаляется до тех пор, пока обработчик не выстрелил. – Carcigenicate