为了账号安全,请及时绑定邮箱和手机立即绑定

为什么通过getElementById("table")获得父节点删除tr不行?

 var parenttr = one.parentNode.parentNode;  

        // var mytable = document.getElementById("table");  不知道为什么这种方式不行

        var mytable = one.parentNode.parentNode.parentNode;

        alert(parenttr+"               "+mytable);

        mytable.removeChild(parenttr);


正在回答

3 回答

  1. table下是tbody,tbody下才是tr,所以table的子节点(childNodes)有2个,一个是名字为#text,另一个为TBODY.

  2. tbody的子节点才是tr

  3. 可用这段代码测试:

  4.   function test(){

          var tab=document.getElementById("table").childNodes;

          alert(tab.length+","+tab[0].nodeName+"<br />"+tab[1].nodeName);

          }

3 回复 有任何疑惑可以回复我~
#1

千夜奇谭 提问者

非常感谢!
2016-04-26 回复 有任何疑惑可以回复我~

楼上正解

0 回复 有任何疑惑可以回复我~

table标签下默认有<thead></thead> <tbody></tbody>两个子节点,还可能有空白符产生的文本节点

5 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么通过getElementById("table")获得父节点删除tr不行?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信