Рассмотрим HTML-форму:
<form action="" method="POST" onsubmit="return checkValidArray()">
<input type="text" name="data" onchange="return validate(this);">
</form>
Похоже (как в IE 6, так и в Firefox 3), что когда вы вводите текст в поле ввода и нажимаете кнопку «Отправить», событие onchange запускается для поля ввода, но событие onsubmit не запускается для формы, пока вы не нажмете кнопку отправки. во второй раз (при этом, конечно, переключение не срабатывает). Другими словами, onsubmit, кажется, предотвращает срабатывание onsubmit.
Желание состоит в том, чтобы проверять каждое поле в форме, когда пользователь выходит из поля, чтобы предоставить им немедленную обратную связь проверки, а также предотвратить отправку формы, если есть недопустимые данные.
[РЕДАКТИРОВАТЬ: Обратите внимание, что обе функции проверки содержат предупреждение ().]
Как обойти эту проблему?