weixin_慕勒2266735
2019-02-15 15:39
// 创建删除函数
function del(tr){
var del = tr.parentNode.parentNode;
var tb = document.getElementById("table");
tb.removeChild(del);
}
/* function del(tr){
var del = tr.parentNode.parentNode
del.parentNode.removeChild(del);
}*/
第一种表述运行报错,第二种可以,document.getElementById("table")跟 del.parentNode是有什么区别呢?
另外,官方的代码是这样写的:
function deleteRow(obj){
var tbody = document.getElementById('table').lastChild;
var tr = obj.parentNode.parentNode;
tbody.removeChild(tr);
怎么也弄不明白定义tbody后面为何要加lastChild,他应该是tr的父节点才对啊!
终于弄明白了,其实table下面隐藏tbody节点,不写出来系统也会默认有,这样所有问题都弄明白了
你第一种在onclick绑定函数时,参数要写this,指向当前的a元素,你方法写得没问题。
del.parentNode就等于table元素。意思a元素的父元素(td)的父元素(tr)的父元素(table)
官方代码我没看,不过单纯看你这一段确实是错的。
JavaScript进阶篇
468727 学习 · 22064 问题
相似问题
回答 2
回答 1
回答 2
回答 1
回答 1