Ответ 1
У вас было несколько проблем с вашим кодом.
1) Отсутствует замыкающая скобка }
в пределах rules
.
2) В этом случае нет смысла использовать функцию для правила required
. По умолчанию плагин может обрабатывать только теги checkbox
и radio
, поэтому использовать true
достаточно. Однако это будет просто выполнять ту же логику, что и в вашей исходной функции, и проверить, что проверено хотя бы одно.
3) Если вы также хотите проверить только максимум два, вам необходимо применить правило maxlength
.
4) В опции messages
отсутствовала спецификация правила. Он будет работать, но одно настраиваемое сообщение будет применяться ко всем правилам в одном и том же поле.
5) Если атрибут name
содержит скобки, вы должны заключить его в кавычки.
DEMO: http://jsfiddle.net/K6Wvk/
$(document).ready(function () {
$('#formid').validate({ // initialize the plugin
rules: {
'test[]': {
required: true,
maxlength: 2
}
},
messages: {
'test[]': {
required: "You must check at least 1 box",
maxlength: "Check no more than {0} boxes"
}
}
});
});