最近我尝试了一个小的javascript工作,只能检查一些复选框。问题是,我对Javascript没有任何线索,因此在查看谷歌搜索结果时我有点迷失。
到目前为止,我使用了我在网上找到的语法检查程序,它没有出错(一个好的迹象,但它无论如何都没有用)。 为了防止您询问,复选框的提交名称是正确的(;
这是我的代码到目前为止,任何帮助将不胜感激,并提前感谢!
function checkAll(name) {
var flag = 0;
//get all checkboxes with that name
var checkboxes = document.getElementsByName(name);
//look if the check all box is checked or not, set the flag
if (document.getElementByName('check_all').checked === true) {
flag = 1;
}
for (var i = 0; i < checkboxes.length; i++) {
//check the boxes or uncheck them
if (flag == 1) {
checkboxes[i].checked = true;
}
else {
checkboxes[i].checked = false;
}
}
}
答案 0 :(得分:4)
没有document.getElementByName
函数来按名称获取单个元素。您需要将其更改为ID并使用:
if(document.getElementById('check_all').checked === true) {
flag = 1;
}
或使用document.getElementsByName('check_all')[0]
代替document.getElementByName('check_all')
。这假设页面上只有一个名为check_all
的元素;如果有多个,你会想要考虑一些其他方式来唯一地识别它们(例如ID)。