События проверки формы Javascript - PullRequest
0 голосов
/ 03 июня 2010

Я делаю небольшую форму для приложения php, и у меня возник вопрос относительно проверки JavaScript.

Какое лучшее событие для запуска проверки JavaScript на входном значении? Это событие "Фокус"?

Изначально я использовал «focusout», но он создает проблемы, когда пользователь нажимает клавишу ввода, когда он все еще сфокусирован на каком-либо конкретном поле в форме.

Должен ли я запускать проверку js, когда пользователь нажимает "Отправить"?

Просто ищу совета.

Спасибо!

Chuck

Ответы [ 4 ]

2 голосов
/ 03 июня 2010

Должен ли я запустить проверку JS, когда пользователь нажимает кнопку Отправить?

Если вы переопределите фактическое событие отправки формы, вы поймете и кнопку отправки, и когда пользователь нажмет клавишу возврата.

$('#yourForm').submit(function () {
  // validation ...
  if (valid) {
    return true;
  }
  return false;
});
1 голос
/ 03 июня 2010

Возможно, я ошибаюсь и часто ошибаюсь, но вместо использования focusout вы можете попробовать использовать .change ()

Это должно зарегистрировать любое значение, которое пользователь ввел в текстовое поле, даже если он нажал клавишу Return. Фактически, он должен регистрироваться, если пользователь нажимает клавишу табуляции, щелкает в любом месте за пределами текстового поля, нажимает кнопку отправки и, по существу, всякий раз, когда фокус теряется на поле формы.

0 голосов
/ 03 июня 2010

Вы можете проверить плагин jQuery Validation: http://docs.jquery.com/Plugins/Validation

По умолчанию он будет проверяться при отправке, затем, если есть ошибки, он будет проверяться при событии onchange поля.

0 голосов
/ 03 июня 2010

Это интересный вопрос о дизайне, и не только технический. Если вы проверяете каждое поле, когда пользователь покидает его, вы, как следствие, будете каким-то образом показывать результат вашей проверки, по крайней мере, если значение поля не является «действительным». С этим нужно обращаться хорошо, иначе это будет раздражать.

Лично я считаю, что проверять при отправке меньше проблем, но для больших форм людям может быть непонятно, когда им нужно вернуться назад и переосмыслить то, с чем они хотели бы покончить. Кроме того, как вы говорите, вы все равно застряли с проверкой во время отправки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...