我不知道为什么我无法使用下面提到的代码切换我的复选框。但是同样的代码在另一个项目中运行良好。但是,当我尝试在另一个CodeIgniter项目中实现它时,它不起作用。请帮我解决这个问题。
<form action="" method="post" onSubmit="return checkTheBox() " name="checkboxform">';
href中的Onclick事件
echo "<td><a href='javascript:void();' onClick='javascript:checkAll('checkboxform', true);'><b>Check All</b></a> |
<a href='javascript:void();' onClick='javascript:checkAll('checkboxform', false);'><b>UnCheck All</b></a></td>";
复选框
echo "<td><input type='checkbox' name='checkid[]' value=''</td>";
的Javascript
<script type="text/javascript">
function checkAll(formname, checktoggle)
{
var checkboxes = new Array();
checkboxes = document[formname].getElementsByTagName('input');
for (var i = 0; i < checkboxes.length; i++) {
if (checkboxes[i].type === 'checkbox') {
checkboxes[i].checked = checktoggle;
}
}
}
</script>
答案 0 :(得分:1)
我可以看到您的代码存在一些问题
input
代码未关闭,缺少>
,应为
<td><input type='checkbox' name='checkid[]' value=''></td>
onclick
元素和a
元素中的javascript字符串全部用单引号括起来'
onClick='javascript:checkAll('checkboxform', true);'
对于浏览器,onclick
属性值为'javascript:checkAll('
而checkboxform', true);'
只是垃圾,但它无法理解。
这应该是
onClick="javascript:checkAll('checkboxform', true);"
在PHP中,这将是
echo "... onClick=\"javascript:checkAll('checkboxform', true);\" ..."
href='javascript:void();
应为href="javascript:void(0);
修复这些错误后,它会按预期工作。见JSFiddle