У меня есть форма и вы хотите отключить/включить его кнопку отправки в зависимости от того, пустые ли текстовые поля формы или что в них был введен текст.Событие ввода текста HTML
Я думаю, что это означает наличие обработчика событий для текстовых полей ввода «keydown
или keypress
события: при его запуске этот обработчик событий должен проверить, содержат ли текстовые поля ввода текст и соответственно включить или отключить кнопку отправки.
change
событие выглядит как оно должно быть более полезным, чем keydown
или keypress
событий, за исключением того, что он не стрелял, пока контроль в вопросе теряет фокус, а что хорошего в том, что: поскольку пользователь хочет просто введите что-то, а затем нажмите кнопку отправки, я хочу, чтобы обработчик событий был запущен введенным текстом, и не только тогда, когда элемент управления теряет фокус.
Мои вопросы:
- ли
keydown
и/илиkeypress
события вызывается перед или после того, как соответствующий текст был вставлен в поле ввода текста? - Есть ли
keydown
и/илиkeypress
события аннулируются (вы можете отменить их, чтобы предотвратить ввод соответствующего текста)?
Edit: FYI, то jQuery validation plug-in повторные испытания формируют действительность на Ключевание.
Если они уволены до ввода текста, не делает их бесполезными для той цели, для которой я намеревался использовать их (что должно было проверить, содержат ли поля ввода текст)? Какой другой механизм я могу использовать вместо этого (чтобы включить/отключить кнопку отправки в зависимости от того, содержат ли поля ввода текст)? – ChrisW
Вы можете поместить тест insubmit, чтобы проверить, есть ли что-то в поле ввода. – jjclarkson
Выполнение этого было бы немного позже, чем я хотел: обычно, в настольном приложении, по крайней мере, включить/отключить кнопку «ОК» диалогового окна в реальном времени в зависимости от того, является ли он действительным/кликабельным. Вы говорите, вместо этого, чтобы кнопка была доступна кликабельно все время (так что onsubmit всегда может быть вызван), но для проверки onsubmit (и я предполагаю, чтобы отображалось сообщение об ошибке, чтобы сказать, что требуется поле). Я понимаю, что это обычный/обычный способ сделать это в браузере; Мне было интересно, поддерживает ли технология (т. Е. Поведение доступных событий) другой интерфейс. – ChrisW