Вы можете использовать функцию jQuery .change()
.
После первоначальной загрузки страницы вы можете проверить всю форму, просто чтобы убедиться, что она на самом деле не заполнена. После этого вы можете использовать .change()
, чтобы проверить, изменились ли какие-либо изменения в форме, и если что-то изменилось , снова подтвердите форму.
$(document).ready(function() {
// validate form once, just to be sure (if valid, activate submit button)
});
...
<form>
<input class="target" type="text" value="Field 1" />
<select class="target">
<option value="option1" selected="selected">Option 1</option>
<option value="option2">Option 2</option>
</select>
</form>
<script type="text/javascript">
$('.target').change(function() {
alert('Something changed');
// Try validating form again (if valid, activate submit button)
});
</script>
Plan B
Другой вариант всегда есть кнопка отправки кликабельным, но использовать .submit()
, чтобы привязать его к форме валидатора. Тогда, если форма действительна, продолжайте. Если форма НЕ допустима, используйте .preventDefault()
, чтобы остановить подачу формы ..... и вы также отобразите предупреждающее сообщение с указанием недостающих полей.
здесь есть решение этой проблемы => [это] (http://stackoverflow.com/a/36708876/2805103) –
Проверьте мои answer [здесь] (http://stackoverflow.com/a/41530164/3952799) –