Bud*_*sey 11 forms validation jquery
我正在努力解决这个问题.现在正在查看JQuery验证的示例和工具超过3个小时.
我想要做的就是要求选中一个复选框和一个单选按钮,但我不在乎需要哪一个.
<form id="form1" action="/controller/action" method="post">
<div class="checkbox"><input type="checkbox" name="box1" class="cBox" /><label for="box1" class="label">Box1</label></div>
<div class="checkbox"><input type="checkbox" name="Box2" class="cBox" /><label for="Box2" class="label">Box2</label></div>
<div class="checkbox"><input type="checkbox" name="Box3" class="cBox" /><label for="Box3" class="label">Box3</label></div>
<div class="radio"><input type="radio" name="print" value="Radio1" class="rad" /><label class="label">Radio1</label></div>
<div class="radio"><input type="radio" name="print" value="Radio2" class="rad" /><label class="label">Radio2</label></div>
<div class="radio"><input type="radio" name="print" value="Radio3" class="rad" /><label class="label">Radio3</label></div>
<input type="submit" value="Submit" />
</form>
Run Code Online (Sandbox Code Playgroud)
任何帮助将不胜感激.
Pao*_*ino 22
为此,您必须使用:checked选择器.虽然JP的答案很好,但我可能会这样做:
$('#form1').submit(function() {
if ($('input:checkbox', this).is(':checked') &&
$('input:radio', this).is(':checked')) {
// everything's fine...
} else {
alert('Please select something!');
return false;
}
});
Run Code Online (Sandbox Code Playgroud)
几个笔记:
is函数更好,它返回选择器的布尔值.:radio和:checkbox作为选择表单中所有无线电和复选框的快捷方式.但是,根据jQuery手册,使用这些选择器而不input在它们之前指定是不好的做法,因为它们评估*:checkbox和*:radio否则,它们是非常慢的选择器.this作为第二个参数,我们指定搜索的上下文,因此仅搜索当前表单内的复选框和无线电输入.没有它,如果页面中恰好有另一种形式,我们可能会得到误报.