Я использую плагин проверки формы jQuery. Форма имеет 5 флажков. Первый из которых (мастер), если он установлен, проверяет оставшиеся 4 и делает их неизменными пользователем. Если мастер не отмечен, оставшиеся 4 окна возвращаются к тому, чтобы пользователь мог его выполнить. Эта функциональность работает нормально. Теперь, что я хочу сделать, если все флажки не отмечены, аннулируйте форму. Я также хочу, чтобы одна конкретная область (checkBoxErrorHolder) содержала сообщение об ошибке проверки только для флажков. Другие сообщения об ошибках должны появляться в их положениях по умолчанию по их входам. Вот что у меня есть до сих пор:Проверка флажков состояния с помощью jQuery Validator
<script language="javascript">
$(function() {
$.validator.addMethod("validateCheckBoxes",
function (value, element, params) {
var master=false,
slave1=false,
slave2=false,
slave3=false,
slave4=false;
if ($("#master").attr("checked"))
master = true;
if ($("#slave1").attr("checked"))
slave1 = true;
if ($("#slave2").attr("checked"))
slave2 = true;
if ($("#slave3").attr("checked"))
slave3 = true;
if ($("#slave4").attr("checked"))
slave4 = true;
return (master || (slave1&&slave2&&slave3&&slave4));
},
"One or more check boxes must be checked");
$("#theForm").validate({
rules: {
first: required,
last: required,
email: {required: true, email: true},
master: { required: true,
validateCheckBoxes: true},
errorPlacement: function(error, element) {
$("#checkBoxErrorHolder").html(error);
}
}
slave1: { required: true,
validateCheckBoxes: true},
errorPlacement: function(error, element) {
$("#checkBoxErrorHolder").html(error);
}
}
slave2: { required: true,
validateCheckBoxes: true},
errorPlacement: function(error, element) {
$("#checkBoxErrorHolder").html(error);
}
}
slave3: { required: true,
validateCheckBoxes: true},
errorPlacement: function(error, element) {
$("#checkBoxErrorHolder").html(error);
}
}
slave4: { required: true,
validateCheckBoxes: true,
errorPlacement: function(error, element) {
$("#checkBoxErrorHolder").html(error);
}
}
},
messages: {
first: "required",
last: "required",
email: {
required: "Email address required",
email: "Please supply a valid email address"
}
}
});
});
</script>
<form id="theForm" ...>
<input type="text" name="first" value="" />
<input type="text" name="last" value="" />
<input type="text" name="email" value="" />
<input type="checkbox" id="master" value="master" class="validateCheckBoxes"/>
<input type="checkbox" id="slave1" value="slave1" class="validateCheckBoxes"/>
<input type="checkbox" id="slave2" value="slave2" class="validateCheckBoxes"/>
<input type="checkbox" id="slave3" value="slave3" class="validateCheckBoxes"/>
<input type="checkbox" id="slave4" value="slave4" class="validateCheckBoxes"/>
<input type="submit" />
</form>
<div id="checkBoxErrorHolder"></div>
Излишне говорить, что я не получаю ожидаемых результатов.
всей вашей '.attr (" проверка ed) 'отсутствуют их заключительные кавычки –