请大家帮我看一下为什么我这个function不行?

来源:9-22 编程练习

weibo_阿海dick_0

2016-03-06 18:54

   function add(){

        var table=document.getElementById('table');

        var tr=document.createElement('tr');

        table.appendChild(tr);

        var xh=document.createElement('td');

        xh.innerHTML="xh003";

        var xm=document.createElement('td');

        xm.innerHTML="请输入姓名";

        var cz=document.createElement('td');

        cz.innerHTML="<a href="javascript:del()">删除</a>"

        tr.appendChild(xh);

        tr.appendChild(xm);

        tr.appendChild(cz);

        var tr=document.getElementsByTagName('tr');

        for(i=0;i<tr.length;i++){

            changebgc(tr[i]);

        }

        

    }


写回答 关注

2回答

  • 邬在想
    2016-03-06 23:33:51

    document.getElementById使用错误,“table“这个是标签名,也就是TagName而并非id。

    这个其实在前面的课程有讲过,题主可以温习一下区别:

    http://www.imooc.com/code/3251

    以人来举例说明,人有能标识身份的身份证,有姓名,有类别(大人、小孩、老人)等。

    1. ID 是一个人的身份证号码,是唯一的。所以通过getElementById获取的是指定的一个人。

    2. Name 是他的名字,可以重复。所以通过getElementsByName获取名字相同的人集合。

    3. TagName可看似某类,getElementsByTagName获取相同类的人集合。如获取小孩这类人,getElementsByTagName("小孩")。

    把上面的例子转换到HTML中,如下:

    <input type="checkbox" name="hobby" id="hobby1">  音乐

    input标签就像人的类别。

    name属性就像人的姓名。

    id属性就像人的身份证。

    方法总结如下:

    注意:方法区分大小写

    通过下面的例子(6个name="hobby"的复选项,两个按钮)来区分三种方法的不同:

     <input type="checkbox" name="hobby" id="hobby1">  音乐
     <input type="checkbox" name="hobby" id="hobby2">  登山
     <input type="checkbox" name="hobby" id="hobby3">  游泳
     <input type="checkbox" name="hobby" id="hobby4">  阅读
     <input type="checkbox" name="hobby" id="hobby5">  打球
     <input type="checkbox" name="hobby" id="hobby6">  跑步
     <input type="button" value = "全选" id="button1">
     <input type="button" value = "全不选" id="button1">

    1. document.getElementsByTagName("input"),结果为获取所有标签为input的元素,共8个。

    2. document.getElementsByName("hobby"),结果为获取属性name="hobby"的元素,共6个。

    3. document.getElementById("hobby6"),结果为获取属性id="hobby6"的元素,只有一个,"跑步"这个复选项。

     


    weibo_...

    谢谢你的回答,但我之前给了table一个id叫table

    2016-03-07 18:35:12

    共 1 条回复 >

  • fantasy943
    2016-03-06 23:23:52

     var table=document.getElementById('table');

    这个应该用document.getElementByTagName()吧

    weibo_...

    我给了table一个id叫table

    2016-03-07 18:34:01

    共 1 条回复 >

JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468060 学习 · 21891 问题

查看课程

相似问题