2
<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>

<form name="myform">
<li>
   <label class="cba">
         <a href="javascript:void();" onclick="javascript:checkAll('myform', true);">Check All</a> | 
         <a href="javascript:void();" onclick="javascript:checkAll('myform', false);">UnCheck All</a>
   </label>
</li>
<li>
    <input class="cba" type="checkbox" name="content1" value="1"<?php checked('1', $slct); ?>/>
</li>
<li>
    <input class="cbc" type="checkbox" name="content2" value="2"<?php checked('2', $copy); ?>/>
</li>
<li>
    <input class="cbx" type="checkbox" name="content3" value="3"<?php checked('3', $cut); ?>/>
</li>
</form>

大家好,我已经为复选框设置了切换选项,选中全部并取消选中。现在仍然检查所有并取消选中所有都不起作用我在萤火虫中查看时在控制台中收到错误。这是我附上的屏幕截图。我不确定我做错了什么。

在此处输入图像描述

任何建议都会很棒。

谢谢,维姬

4

6 回答 6

6

你的语法不正确。你错过了.forms所以它应该看起来像这样

document.forms[formName].getElementsByTagName("input");
于 2013-07-05T07:58:47.383 回答
2
  function checkAll(formname, checktoggle)
    {
        var checkboxes = new Array();
        checkboxes = document.forms[formname].getElementsByTagName('input');

        for (var i = 0; i < checkboxes.length; i++) {
            if (checkboxes[i].type === 'checkbox') {
                checkboxes[i].checked = checktoggle;
            }
        }
    }
</script>

最后基于@Mark Walters 的建议我纠正了这个问题。这是我根据他的建议更改的那个。感谢你的帮助。愉快的一天

于 2013-07-05T07:59:46.917 回答
2

用于切换(选中/取消选中)所有复选框的 Javascript 函数。

function checkAll(bx)
{
 var cbs = document.getElementsByTagName('input');
 for(var i=0; i < cbs.length; i++)
 {
    if(cbs[i].type == 'checkbox')
    {
        cbs[i].checked = bx.checked;
     }
 }
}
于 2013-10-01T14:49:38.960 回答
1
function checkAll(bx) {
  var cbs = document.getElementsByTagName('input');
  for(var i=0; i < cbs.length; i++) {
    if(cbs[i].type == 'checkbox') {
    cbs[i].checked = bx.checked;
   }
 }
}

从复选框的 onclick 属性调用该函数以检查所有内容。

<input type="checkbox" onclick="checkAll(this)">
于 2013-07-05T07:56:39.063 回答
0

尝试这个:

function checkAll(formname, checktoggle)
{
    var checkboxes = new Array();

    checkboxes = document.form.myform.getElementsByTagName('input');

    for (var i = 0; i < checkboxes.length; i++) {
        if (checkboxes[i].type === 'checkbox') {
               checkboxes[i].checked = checktoggle;
        }
    }
}
于 2013-11-19T16:16:15.310 回答
0

对于特定的复选框,您可以使用:

function checkBoxes(pForm, boxName) {

for (i = 0; i < pForm.elements.length; i++)
    if (pForm.elements[i].name == boxName)
        pForm.elements[i].checked = pForm.elements[i].checked ? false : true;

}

于 2015-05-09T14:08:19.877 回答