myInput.value - это одно нажатие клавиши, когда я проверяю его в обработчике события keyPress. Поэтому, если пользователи набирают "a", myInput.value дает мне ". Затем, когда пользователь набирает" b", myInput.value дает мне "a", и так далее. Значение, похоже, не обновляется с помощью ввода символа нажатием клавиши, вызвавшей событие. Что я делаю не так? благодаря -Morgan
Получение значения поля формы после нажатия клавиши
Ответ 1
Используйте событие keyUp, оно обязательно должно дать вам значение, которое вы ищете.
Ответ 2
Когда у меня была эта проблема, то, что я действительно хотел, было oninput
обработчик событий.
Одна заметная разница между этим и решением keyUp заключается в том, что если вы, например, удерживайте клавишу, чтобы повторить ее, oninput будет вызываться каждый раз, когда ключ повторяется, но keyUp вызывается только при отпускании ключа.