Добавление обязательного атрибута к элементам формы приведет к тому, что браузер «подтвердит» ввод.Но всякий раз, когда пользователь входит в инструменты разработки браузера, он может легко удалить это.Используя валидатор, уже безопаснее, но не невозможно обойти эту меру безопасности.Единственный верный способ проверки - это проверка в php, потому что пользователь не может изменить там код.
Что касается работы валидатора, исправление этих двух вещей заставит его работать:
- Вам нужно , чтобы обернуть входные элементы в элементе формы, именно так работает валидатор jquery.
- Удалите точку с запятой в объекте json, который используется .validate ()
Это даст вам следующий результат, который сработает и предотвратит отправку формы, если оставить ее пустой.
$('#html5submit').click(function() {
$('#html5form').validate({
rules : {
html5required: {
required: true
}
},
submitHandler: function(e) {
$.post({
//My AJAX here works just fine
});
} // There was a semicolon here!
});
});
<form id = "html5form">
<input form="html5form" type="text" name="html5required" maxlength="200">
<input form="html5form" id="html5submit" type="submit">
</form>
Надеюсь, это поможет!