1
我正在構建我的表單中的驗證插件,並且每個工作都很好。但在複選框我得到這個爲HTML:div外的jQuery驗證插件錯誤
表檢查HTML複選框:
<div class="right">
<div class="custom-checkbox"><input type="checkbox" name="family" value="" id="third-check" class="require-one error"><label for="third-check">Check off</label></div>
<div class="custom-checkbox"><input type="checkbox" name="family" value="" id="fouth-check" class="require-one"><label for="fouth-check">Check off</label></div>
<div class="custom-checkbox"><input type="checkbox" name="family" value="" id="five-check" class="require-one"><label for="five-check" class="">Check off</label></div>
<div class="custom-checkbox"><input type="checkbox" name="family" value="" id="six-check" class="require-one">
<label for="checks" generated="true" class="error">Please check at least one box.</label>
<label for="six-check">Check off</label></div>
</div>
正如你所看到的錯誤是不是站在定製複選框股利之外。我怎樣才能做到這一點?
的JS:
$.validator.addMethod('require-one', function(value) {
return $('.require-one:checked').size() > 0;
}, 'Please check at least one box.');
var checkboxes = $('.right .require-one');
var checkbox_names = $.map(checkboxes, function(e, i) {
return $(e).attr("name")
}).join(" ");
$(".valid").validate({
meta: "validate",
groups: { checks: checkbox_names },
errorPlacement: function(error, element) {
if (element.attr("type") == "checkbox")
error.insertAfter(checkboxes.last());
else
error.insertAfter(element);
}
});
這不是工作,我認爲它必須是在error.insertAfter(checkboxes.last());但是我得不到工作... – Maanstraat 2012-03-07 13:21:19
如果您使用element.parent()而不是checkboxes.last(),它會在哪裏放置錯誤消息? – robasta 2012-03-07 13:23:02
在costum-checkbox div之外,但是然後錯誤是作爲第二項而不是最後的東西...所以然後我有:複選框,錯誤,複選框,複選框,複選框。 – Maanstraat 2012-03-07 13:26:43