</body>
<script type="text/javascript">
document.getElementById("all").onclick=function ()
{
var ts = document.getElementByTagName('tr');     
         len = ts.length;
if(this.checked)
{
for(var i=1;i<len;i++)
{
ts[i].getElementByName("checkbox")[0].checked="checked";
ts[i].style.background = "#333";
}

}
else
{
for(var i=1;i<len;i++)
{
ts[i].getElementByName("checkbox")[0].checked="";
ts[i].style.background = "";
}
}
}</script>
</html>
没问题吧? 运行在IE,提示!:对象不支持此属性或方法。。(标红部分)
卧槽!我是没招了,求大神指点。。

解决方案 »

  1.   

    是getElementsByName,方法名写错了
      

  2.   

    楼上的兄弟们。还有个问题,红色下面的两个getElementByName,还是提示不支持此属性或方法,加了s也一样,肿么办?
      

  3.   

    在eclipse里面用"alt+/"就不用担心多写或少写字母了!!!
      

  4.   

    ts[i].getElementByName("checkbox")[0].checked="checked";
    改成
    ts[i].getElementsByTagName("checkbox")[0].setAttribute("checked","checked");试试
      

  5.   

    checkbox控件的name是"checkbox"么?
    要<input name="checkbox" type="checkbox"/>才能通过getElementsByName("checkbox")找到
      

  6.   


    下面那个:ts[i].getElementByName("checkbox")[0].checked="";
    改为
    ts[i].getElementsByTagName("checkbox")[0].removeAttribute("checked");
      

  7.   


    这位仁兄说得对,,,
    getElementsByTagName("input")才能找到checkbox
      

  8.   

    这是body里的代码,可以确定这些是没问题的,用removeAttribute()还是报错,一样的报错。
    <table width="100%" height="40px"  id="head">
           <tr>
              <td width="24%">
                <label>
                  <input type="checkbox" id="all" />
                </label>
              小区名称
              </td>
              <td width="14%">冠名小区经理</td>
              <td width="16%">区域</td>
              <td width="13%">小区状态</td>
              <td width="12%">渗透率</td>
              <td width="10%">覆盖用户数</td>
              <td width="11%">业务小区</td>
            </tr>
          </table>
          <table width="100%" height="50px" cellspacing="15" id="cont" >
            <tr>
              <td>
                <label>
                  <input type="checkbox" name="checkbox" id="checkbox" />
                  新盛花园 </label>
              </td>
              <td>朱维肖</td>
              <td>工业园区</td>
              <td>可放装</td>
              <td>.73%</td>
              <td>1498</td>
              <td><a href="see.html" target="_blank">查看</a></td>
            </tr>
            <tr>
              <td>
                <label>
                  <input type="checkbox" name="checkbox" id="checkbox2" />
                  人才公寓 </label>
              </td>
              <td>周晨喻</td>
              <td>相城区</td>
              <td>可放装</td>
              <td>5.5%</td>
              <td>958</td>
              <td><a href="see.html" target="_blank">查看</a></td>
            </tr>
            <tr>
              <td>
                <label>
                  <input type="checkbox" name="checkbox" id="checkbox3" />
                  馨洪花园 </label>
              </td>
              <td>俞骞</td>
              <td>沧浪区</td>
              <td>可放装</td>
              <td>10.5%</td>
              <td>456</td>
              <td><a href="see.html" target="_blank">查看</a></td>
            </tr>
            <tr>
              <td>
                <label>
                  <input type="checkbox" name="checkbox" id="checkbox4" />
                  碧波二村 </label>
              </td>
              <td>谭明志</td>
              <td>吴中区</td>
              <td>可放装</td>
              <td>7.28%</td>
              <td>477</td>
              <td><a href="see.html" target="_blank">查看</a></td>
            </tr>
            <tr>
              <td>
                <label>
                  <input type="checkbox" name="checkbox" id="checkbox5" />
                  新唯家园 </label>
              </td>
              <td>朱维肖</td>
              <td>工业园区</td>
              <td>可放装</td>
              <td>.86%</td>
              <td>652</td>
              <td><a href="see.html" target="_blank">查看</a></td>
            </tr>
            <tr>
              <td>
                <label>
                  <input type="checkbox" name="checkbox" id="checkbox6" />
                  苏锦一村 </label>
              </td>
              <td>唐磊</td>
              <td>平江区</td>
              <td>可放装</td>
              <td>.23%</td>
              <td>223</td>
              <td><a href="see.html" target="_blank">查看</a></td>
            </tr>
            <tr>
              <td>
                <label>
                  <input type="checkbox" name="checkbox" id="checkbox7" />
                  新升新苑 </label>
              </td>
              <td>张亚娟</td>
              <td>高新区</td>
              <td>可放装</td>
              <td>7.5%</td>
              <td>599</td>
              <td><a href="see.html" target="_blank">查看</a></td>
            </tr>
            <tr>
              <td>
                <label>
                  <input type="checkbox" name="checkbox" id="checkbox8" />
                  创苑 </label>
              </td>
              <td>朱维肖</td>
              <td>工业园区</td>
              <td>可放装</td>
              <td>.66%</td>
              <td>755</td>
              <td><a href="see.html" target="_blank">查看</a></td>
            </tr>
            <tr>
              <td>
                <label>
                  <input type="checkbox" name="checkbox" id="checkbox9" />
                  金益新村 </label>
              </td>
              <td>周晨喻</td>
              <td>相城区</td>
              <td>可放装</td>
              <td>3.56%</td>
              <td>1005</td>
              <td><a href="see.html" target="_blank">查看</a></td>
            </tr>
          </table>
      

  9.   

    <tr>
       <td width="24%">
       <label>
       <input type="checkbox" id="all" />
       </label>
       小区名称
       </td>
       <td width="14%">冠名小区经理</td>
       <td width="16%">区域</td>
       <td width="13%">小区状态</td>
       <td width="12%">渗透率</td>
       <td width="10%">覆盖用户数</td>
       <td width="11%">业务小区</td>
     </tr>
    第一次循环中ts[0].getElementByName("checkbox")找不到checkbox控件的,
    因为<input type="checkbox" id="all" />没有name属性。
    要写成<input type="checkbox" id="all" name="checkbox" /> 
      

  10.   

    document.getElementById("all").onclick = function() {
        var ts = document.getElementsByName('tr');
        len = ts.length;
        for (var i = 1; i < len; i++) {
            var chk = null;
            var chks = ts[i].getElementsByName("input");
            var j = 0;
            do {
                if (chks[j].getAttribute("type") == "checkbox") {
                    chk = chks[j];
                }
            } while (!chk && j++ < chks.length);
            if (chk) {
                if (this.checked) {
                    chk.setAttribute("checked", "checked");
                    ts[i].style.backgroundColor = "#333";
                } else {
                    chk.removeAttribute("checked");
                    ts[i].style.backgroundColor = "";
                }
            }
        }
    }
      

  11.   

    LZ 你这太自信你的代码了 ^_^不知LZ之前是否有自己写这种最基础的代码 自己多写写 不要copy 这样找错误就不至于找不到原因