9-22練習:刪除函數(shù)
function?deleteRow(obj){ ????????????var?tr=obj.parentNode.parentNode; ????????????var?table=document.getElementById("table"); ????????????table.removeChild(tr); ????????}
這么寫為什么只能刪除新建的行,不能刪除默認的行呢?
function?deleteRow(obj){ ????????????var?tr=obj.parentNode.parentNode; ????????????var?table=document.getElementById("table"); ????????????table.removeChild(tr); ????????}
這么寫為什么只能刪除新建的行,不能刪除默認的行呢?
2017-03-03
舉報
2017-03-03
不好意思,剛開始搜索的時候沒有發(fā)現(xiàn)類似問題?為什么刪除原有的兩行刪不掉?和點贊最多的答案區(qū)別在哪里?
根據(jù)這個問題的答案,補充一下答案。
一個完整的<table>標簽如下:
當使用題目列舉的刪除函數(shù),<table>默認子節(jié)點是不存在<tr>標簽的,這是默認兩行刪不掉的原因。
而我們大多數(shù)人的添加函數(shù)中,基本上是用下面這種方式:
即把“新建的行“看作<table>標簽的子節(jié)點加入到其中,即
這就造成了只能刪除新建的行,不能刪除默認的兩行。
如有紕漏,還望指正。