function CheckAll(str,str2)  {
var e = document.getElementsByTagName("input");
var es = document.getElementById(str2)
for (var i=0;i<e.length;i++)
{
if(e[i].id==str){
e[i].checked=es.checked?1:0;
}
}
}当str2 checked时,则所有str checked
反之当str2 !checked时,则所有str !checked上面这段JS代码在IE下可正常运行,但在firefox下就没反应了

解决方案 »

  1.   

        function CheckAll(str,str2)  {
            var e = document.getElementsByTagName("input");
            var es = document.getElementById(str2)
            for (var i=0;i<e.length;i++)
            {
                if(e[i].id==str){
                e[i].checked=es.checked?true:false;
                }
            }
        }
    其他的代码都没有问题~~只有这个可能会有点问题,我没测试~~
    但是input里面都是checkbox或者radio吗?如果不是,可能就有问题了~
      

  2.   

    function CheckAll(str,str2)  {
            var e = document.getElementsByTagName("input");
            var es = document.getElementById(str2)
            for (var i=0;i<e.length;i++)
            {
                if(e[i].id==str){
                e[i].checked=es.checked;//这个足矣
                }
            }
        }
      

  3.   


    我把var es = document.getElementById(str2)
    改成var es = document.getElementsByTagName("input")[str2]就搞定了
      

  4.   

    CJ大虾:
           e[i].checked=es.checked?true:false;
    可以解释下这句代码吗,我看看自己的理解是否正确!!!!!
      

  5.   

    三目表达式
    if(es.checked)
    {
    e[i].checked = true;
    }
    else
    {
    e[i].checked = false;
    }