使用onclick选中/取消选中复选框

时间:2014-01-09 14:41:58

标签: javascript codeigniter

我不知道为什么我无法使用下面提到的代码切换我的复选框。但是同样的代码在另一个项目中运行良好。但是,当我尝试在另一个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>

1 个答案:

答案 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