function scsx(){ var cb=document.getElementsByName(‘checkbox‘) if(confirm(‘删除?‘)){ for (var i=0;i<cb.length;i++) { if(cb[i].checked){ var td1=cb[i].parentElement.parentElement td1.parentNode.removeChild(td1) } } for (var j=0;j<cb.length;j++) { if(cb[j].checked){ var td2=cb[j].parentElement.parentElement td2.parentNode.removeChild(td2) } } } }
为啥循环两次呢?因为删除一个后i的值就变化了一次,跳出最后一次循环时最后一个没有删除。所以再循环一下删除。
当然上面的方法是一个“笨”方法
看下面这个的方法就很好
function scsx(){ var cb=document.getElementsByName(‘checkbox‘) if(confirm(‘删除?‘)){ for (var i=cb.length-1;i>=0;i--) { if(cb[i].checked){ var td1=cb[i].parentElement.parentElement td1.parentNode.removeChild(td1) } } } }
这样倒着循环就可以都删除了。
时间: 2024-08-02 15:10:45