我有一系列复选框设置为数组(name =“action []”)和一个JavaScript函数链接到另一个复选框以检查/取消选中所有复选框。当至少有两个复选框要检查时,它工作正常,但如果只有一个复选框,它什么都不做。谁能指出我正确的方向?谢谢!
HTML:
<input type="checkbox" name="checkall" id="checkall" class="box" onClick="doCheck(this, 'action');">
<input type="checkbox" name="action[]" id="action" value="' . $something['someid'] . '" class="box">
<input type="checkbox" name="action[]" id="action" value="' . $something['someid'] . '" class="box">
JavaScript的:
function doCheck(mainChk, fields) {
for(i = 0; i < mainChk.form.elements[fields].length; i++) {
mainChk.form.elements[fields][i].checked = mainChk.checked;
}
}
答案 0 :(得分:1)
<input type="checkbox" name="checkall" id="checkall" class="box">
<input type="checkbox" name="action[]" id="action" value="' . $something['someid'] . '" class="box check-child">
<input type="checkbox" name="action[]" id="action" value="' . $something['someid'] . '" class="box check-child">
如果您想使用jquery,可以使用以下代码:
$("#checkall").click(function(){
if($(this).is(":checked"))
$(".check-child").attr("checked", "checked");
else
$(".check-child").removeAttr("checked");
));