幫我看看哪里出錯(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)建不提倡。