我正在使用 JavaScript:
<SCRIPT LANGUAGE="JavaScript">
function Check(chk)
{
if(document.myform.CheckAll.value=="Check All"){
for (i = 0; i < chk.length; i++)
chk[i].checked = true ;
document.myform.CheckAll.value="Uncheck All";
} else {
for (i = 0; i < chk.length; i++)
chk[i].checked = false ;
document.myform.CheckAll.value="Check All";
}
}
</script>
在html代码上:
<form name="myform" method="post" action="">
<input type="checkbox" name="check_list[]" value="<? echo $row['Report ID'] ?>">
<input type="checkbox" name="check_list[]" value="<? echo $row['Report ID'] ?>">
...*More Checkboxes*...
<input style="font-family: sans-serif; font-weight:bold; font-size:12px; border: 1px #000000 solid;" type="button" id="CheckAll" name="CheckAll" value="Check All"
onClick="Check(document.myform.check_list[])">
但似乎不起作用...
它确实在某个时刻起作用,但那是在我使用名称之前:“check_list[]”(“[]”位)-这会导致 javascript 出现问题吗?如果是这样我怎样才能阻止它? -或者我怎样才能让javascript检查所有复选框? :)
非常感谢。
最佳答案
看看这个(删除重复代码+改进)
js:
function Check(frm){
var checkBoxes = frm.elements['check_list[]'];
for (i = 0; i < checkBoxes.length; i++){
checkBoxes[i].checked = (frm.CheckAll.value == "Check All") ? 'checked' : '';
}
frm.CheckAll.value = (frm.CheckAll.value == "Check All") ? "Uncheck All" : 'Check All';
}
标记:
<form name="myform" method="post" action="">
<input type="checkbox" name="check_list[]" value="<? echo $row['Report ID'] ?>">
<input type="checkbox" name="check_list[]" value="<? echo $row['Report ID'] ?>">
<input style="font-family: sans-serif; font-weight:bold; font-size:12px; border: 1px #000000 solid;" type="button" id="CheckAll" name="CheckAll" value="Check All"
onClick="Check(document.myform)">
关于Javascript - 检查所有复选框问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4997615/