幫我看看哪里出錯(cuò)????
<!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)移動(dòng)改變背景,可以通過(guò)給每行綁定鼠標(biāo)移上事件和鼠標(biāo)移除事件來(lái)改變所在行背景色。
?????????
?????????var?gettr?=?document.getElementsByTagName("tr");
?????????for(var?i=0;i<gettr.length;i++)
?????????{
?????????????gettr[i].onmouseout=function(){this.style.backgroundColor="#fff";}
?????????????gettr[i].onmouseover=function(){this.style.backgroundColor="#f2f2f2";}
?????????}
?????}
?????
??????//?編寫(xiě)一個(gè)函數(shù),供添加按鈕調(diào)用,動(dòng)態(tài)在表格的最后一行添加子節(jié)點(diǎn);
?????function?addRow()
?????{
?????????var?getRowP?=?document.getElementsById("table");
?????????var?newRow?=?document.createElement("tr");
?????????for(var?i=0;i<2;i++)
?????????{
?????????????var?newtd[i]=document.createElement("td");??????????
??????????????newtd[i].innerHTML="<input?type?=?'text'?/>"
????????????newRow.appendChild(newts[i]);
?????????}
?????????
?????????getRowP.appendChild(newRow);
????????
?????}
????
??? ?
?????//?創(chuàng)建刪除函數(shù)
?????function?delRow(obj)
?????{
?????????var?getRowP?=?document.getElementById("table");
?????????var?tr?=?obj.parentNode.parentNode;
?????????getRowP.removeChild(tr);
?????}
??</script>?
?</head>?
?<body>?
???<table?border="1"?width="50%"?id="table">
???<tr>
<th>學(xué)號(hào)</th>
<th>姓名</th>
<th>操作</th>
???</tr>??
???<tr>
<td>xh001</td>
<td>王小明</td>
<td><a?href="javascript:;"onclick="delRow(this)">刪除</a></td>???<!--在刪除按鈕上添加點(diǎn)擊事件??-->
???</tr>
???<tr>
<td>xh002</td>
<td>劉小芳</td>
<td><a?href="javascript:;"?onclick="delRow(this)">刪除</a></td>???<!--在刪除按鈕上添加點(diǎn)擊事件??-->
???</tr>??
???</table>
???<input?type="button"?value="添加一行"?onclick="addRow()"?/>???<!--在添加按鈕上添加點(diǎn)擊事件??-->
?</body>
</html>哪里出錯(cuò)???
2016-03-28
//我有一個(gè)調(diào)試的經(jīng)驗(yàn),你先把其它的函數(shù)注釋掉,留下一個(gè)函數(shù);一個(gè)一個(gè)的調(diào)。這兒我調(diào)試了一下刪除函數(shù)。
//我一行一行加?alert("hello") 發(fā)現(xiàn)? getRowP.removeChild(tr);執(zhí)行不了,看代碼tr的父節(jié)點(diǎn)應(yīng)該是getRowP,怎么回事呢?
//我測(cè)一下tr的父節(jié)點(diǎn)是不是getRowP,加了這一段
var ftr=tr.parentNode;
? ? ? ? ? ? alert(ftr) ;
? ? ? ? ? ?alert(ftr.isEqualNode(getRowP)) ;
結(jié)果是false,彈出ftr,顯示tablesection objection;這一點(diǎn)我也不知道為什么。讓var getRowP= ?obj.parentNode.parentNode.parentNode;結(jié)果就正常了。希望能對(duì)你有幫助。
//
function delRow(obj)
? ? ?{
? ? ? ?
? ? ? ? var getRowP ?= document.getElementById("table");
? // ? ? ? var getRowP= ?obj.parentNode.parentNode.parentNode;
? ? ? ? ?var tr = obj.parentNode.parentNode;
/* ? ? ? ?{
? ? ? ? ? ? var ftr=tr.parentNode;
? ? ? ? ? ? alert(ftr) ;
? ? ? ? ? ?alert(ftr.isEqualNode(getRowP)) ;
? ? ? ? }
*/
? ? ? ? ?getRowP.removeChild(tr);
? ? ? ??
? ?// ? ? ? alert("hello") ;
? ? ?}
2016-03-27
我給你指出錯(cuò)誤代碼的地方,和改正方法:
59:a href="javascript:;"onclick="delRow(this)"?? onclick前面缺少空格
然后是你的addraw有問(wèn)題:var 對(duì)象是不能對(duì)一個(gè)數(shù)組進(jìn)行循環(huán)插入的(不確定)? 這個(gè)你可以私下嘗試,用for循環(huán)進(jìn)行循環(huán)創(chuàng)建不提倡。