9-22練習(xí):刪除函數(shù)
function removeEle(){
? ?var t=document.getElementsByTagName('tbody')[0];
? ?var as=document.getElementsByTagName('a');
? ?for(var i=0;i<as.length;i++){
? ? ? ?as[i].onclick=function(e){
? ? ? ? ? ?console.log(this.parentNode);
? ? ? ? ? ?t.removeChild(this.parentNode.parentNode);
? ? ? ?}
? ?}
}
<td><a href="javascript:;" onclick='removeEle()'>刪除</a></td>
為什么第一次點擊的時候沒有執(zhí)行刪除函數(shù),點擊第二次及以后就可以
2017-03-19
你點擊添加一行的時候,多了一行,就是多了一個a,這個a是動態(tài)添加的,你的刪除函數(shù)里面獲取到的a是之前就存在的,之前才有2個a(索引值是0和1),動態(tài)添加的那個刪除按鈕的索引值是2,這時候他身上并沒有點擊事件,然而你點擊過后,運行了removeEle函數(shù),這時候獲取到了新的a,就變成了3個,動態(tài)添加的a就有了點擊事件,所以點第二次的時候就成了。
2017-03-16
我說的不清楚,你就當(dāng)一個提示吧
2017-03-16
as.length的值是變化的,for每執(zhí)行一次as.length的值就減一,而i值在增加,這樣每次第一個數(shù)也就是數(shù)組[0]是變動的,也就造成無法一次刪除,具體執(zhí)行流程及原因你再琢磨一下看看。