求教大神刪除函數(shù)三種表述的區(qū)別
// 創(chuàng)建刪除函數(shù)
? ? ?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是有什么區(qū)別呢?
另外,官方的代碼是這樣寫的:
function deleteRow(obj){
var tbody = document.getElementById('table').lastChild;
var tr = obj.parentNode.parentNode;
tbody.removeChild(tr);
怎么也弄不明白定義tbody后面為何要加lastChild,他應該是tr的父節(jié)點才對啊!
2019-02-18
終于弄明白了,其實table下面隱藏tbody節(jié)點,不寫出來系統(tǒng)也會默認有,這樣所有問題都弄明白了
2019-02-17
你第一種在onclick綁定函數(shù)時,參數(shù)要寫this,指向當前的a元素,你方法寫得沒問題。
del.parentNode就等于table元素。意思a元素的父元素(td)的父元素(tr)的父元素(table)
官方代碼我沒看,不過單純看你這一段確實是錯的。