慕村4487855
2019-03-21 18:29
function shan(r)
{
var table=document.getElementById("table").lastChild;
var tr=r.parentNode.parentNode;
table.removeChild(tr);
}
这样只能删除未添加之前的最后一行
function shan(r)
{
var table=document.getElementById("table");
var tr=r.parentNode.parentNode.parentNode;
table.removeChild(tr);
}
这样又只能删掉自己添加的行
function shan(r)
{
var table=document.getElementById("table");
var tr=r.parentNode.parentNode;
table.removeChild(tr);
}
这样整个表都删掉了
请问大神们到底怎么才能正常的操作删除啊
function deltr(obj){
var fa=obj.parentNode.parentNode;
fa.parentNode.removeChild(fa); //fa.remove(fa)
}
我测试这三个函数的结果和你不一样。table在chrome中会自动加上tbody标签。所以对于table标签来说,只有一个tbody节点。所以你写的第三个函数不会删掉东西,因为table看不到tr。同理,第二个函数会把整个table删掉,是由于var tr=r.parentNode.parentNode.parentNode其实指的是整个table,自己打开网页结构看看。第一个函数是正确的,通过tbody删掉指定的行。不知道这能不能解决你的问题
JavaScript进阶篇
468060 学习 · 21891 问题
相似问题