刪除函數(shù)問題
<!DOCTYPE html>
<html>
?<head>
? <title> new document </title> ?
? <meta http-equiv="Content-Type" content="text/html; charset=gbk"/> ??
? <script type="text/javascript">?
??
? ? ? window.onload = function(){
? ? ? ? ? ? ? ? ??
? ? ?// 鼠標(biāo)移動改變背景,可以通過給每行綁定鼠標(biāo)移上事件和鼠標(biāo)移除事件來改變所在行背景色。
? ? ? ? ?
? ? ?
?
}
? ? ?
? ? ? // 編寫一個函數(shù),供添加按鈕調(diào)用,動態(tài)在表格的最后一行添加子節(jié)點;
? ? ?
? ?
? ? ?
? ? ?// 創(chuàng)建刪除函數(shù)
? ? ?function rem(rec)
? ? ?{
? ? ? ? ?var x = rec.parentNode.parentNode;
? ? ? ? ?var y = document.getElementById("table")
? ? ? ? ?//document.write(y.lastChild.nodename);
? ? ? ? ?y.removeChild(x);
? ? ?}
? </script>?
?</head>?
?<body>?
? <table border="1" width="50%" id="table" name="aa">
? <tr>
<th>學(xué)號</th>
<th>姓名</th>
<th>操作</th>
? </tr> ?
? <tr>
<td>xh001</td>
<td>王小明</td>
<td><a href="javascript:;" onclick="rem(this);" >刪除</a></td> ? <!--在刪除按鈕上添加點擊事件 ?-->
? </tr>
? <tr>
<td>xh002</td>
<td>劉小芳</td>
<td><a href="javascript:;" onclick="rem(this);" ?>刪除</a></td> ? <!--在刪除按鈕上添加點擊事件 ?-->
? </tr> ?
? </table>
? <input type="button" value="添加一行" ?/> ? <!--在添加按鈕上添加點擊事件 ?-->
?</body>
</html>
刪除函數(shù)如下:
function rem(rec)
? ? ?{
? ? ? ? ?var x = rec.parentNode.parentNode;
? ? ? ? ?var y = document.getElementById("table")
? ? ? ? ?//document.write(y.lastChild.nodename);
? ? ? ? ?y.removeChild(x);
? ? ?}
但是這樣刪除不了。把函數(shù)改成:
? ? ?function rem(rec)
? ? ?{
? ? ? ? ?var x = rec.parentNode.parentNode;
? ? ? ? ?var y = document.getElementById("table").lastChild;
? ? ? ? ?//document.write(y.lastChild.nodename);
? ? ? ? ?y.removeChild(x);
? ? ?}
就可以刪除了。這是為什么?要刪除的行的父節(jié)點不是table嗎?
2015-12-19
還有個tbody節(jié)點
2016-02-05
補充yueyue123同學(xué)的:
? ?var tbody = document.getElementById('table').childNodes[1]; //也是可以的:間接證明:在table有兩個子節(jié)點,第一個是空白節(jié)點(#text),然后是tbody.
2016-01-15
2015-12-20
table有一個tbody的子節(jié)點,當(dāng)你沒寫時瀏覽器會自動添加,現(xiàn)在table有兩個子節(jié)點,第一個是空白節(jié)點(#text),然后是tbody.