Это упрощенная версия страницы, над которой я работал; У меня есть базовая c проверка работоспособности здесь , но я хочу интегрироваться с валидатором jQuery, чтобы получать встроенные сообщения об ошибках вместо просто блоков предупреждений.
<html>
<head>
<title>pick a box, its contents will help you on your way!</title>
<script src="jQuery-1.4.4-min.js"></script>
<script src="jQuery-validate.js"></script>
</head>
<body>
<form id="fred">
<input class="Notes8" name="Notes8~1" id="Notes8~1" type="checkbox" value="Yes"> Option 1<br>
<input class="Notes8" name="Notes8~2" id="Notes8~2" type="checkbox" value="Yes"> Option 2<br>
<input class="Notes8" name="Notes8~3" id="Notes8~3" type="checkbox" value="Yes"> Option 3<br>
<script type='text/javascript'>
jQuery(function($) {
function validateMultiple (selector, n, isExactlyN) {
const totChecked = $(selector).filter(':checked').length;
return !(isExactlyN ? totChecked == n : totChecked >= n);
}
jQuery.validator.addMethod('.Notes8',
function(value, element) {
return validateMultiple('.Notes8', 1);
},
'Please check at least one check box.');
});
</script>
<button type="submit">SUBMIT!</button>
</form>
</body>
</html>
Проблема в том, вызов jQuery.validator.addMethod
не работает; проверка не происходит, и если я помещаю alert("FRED");
в function(value, element)
, то ничего не отображается, указывая, что метод валидатора никогда не был подключен должным образом Почему это? Как я могу заставить функцию проверки выполняться при отправке формы? Я не вижу ошибок JavaScript в консоли браузера.