如何检查必须在php中使用jQuery选中至少一个复选框? 如果用户没有标记任何复选框,我想显示提醒。
这是我正在测试的当前代码,但它始终会发出警报。
HTML:
<div class="form">
<form id="dddd" action="action.php" method="post" enctype="multipart/form-data">
<div>
<label><input type="checkbox" name="checkboxlist[]" value="a" checked> a</label>
<label><input type="checkbox" name="checkboxlist[]" value="b" checked> b</label>
<label><input type="checkbox" name="checkboxlist[]" value="c" checked> c</label>
<label><input type="checkbox" name="checkboxlist[]" value="d" checked> d</label>
<label><input type="checkbox" name="checkboxlist[]" value="e" checked> e</label>
<label><input type="checkbox" name="checkboxlist[]" value="f" checked> f</label>
<label><input type="checkbox" name="checkboxlist[]" value="g" checked> g</label>
</div>
<p>
<button type="submit" class="btn btn-primary">Start</button>
</p>
</form>
JavaScript的:
$(document).ready(function() {
$("form#dddd").submit (function() {
if ($('.checkboxlist').is(":checked") == false) {
alert("Please select at least one item !");
return false;
}
return true;
});
});
根据回复和运行进行编辑 工作代码
<script>
$(document).ready(function() {
$("form#dddd").submit (function() {
if($('input[type="checkbox"]:checked').length) {
return true;
} else {
alert("Please select at least one item !");
return false;
}
});
});
</script>
答案 0 :(得分:4)
检查:checked
复选框的长度,如下所示
if($('input[type="checkbox"]:checked').length) {
// do your stuff
}
而不是
if($('.checkboxlist').is(":checked") == false) {
}
答案 1 :(得分:1)
试试这个:
if($('input[name^=checkboxlist]:checked').length > 0) {
alert("success");
} else {
alert("error");
return false;
}