/*********↑不要把简单的问题复杂化**********/
/*****不管是动态生成还是静态生成,此方法通杀******/
直接代码复制出去运行,我已经尽量写简单了,如果你还是不明白,那么...我...
<html>
<head>
<title>1</title>
<script>
//得到行对象
function getRowObj(obj)
{
var i = 0;
while(obj.tagName.toLowerCase() != "tr"){
obj = obj.parentNode;
if(obj.tagName.toLowerCase() == "table")
return null;
}
return obj;
}
//根据得到的行对象得到所在的行数
function getRowNo(obj){
var trObj = getRowObj(obj);
var trArr = trObj.parentNode.children;
for(var trNo= 0; trNo < trArr.length; trNo++){
if(trObj == trObj.parentNode.children[trNo]){
alert(trNo+1);
}
}
}
//删除行
function delRow(obj){
var tr = this.getRowObj(obj);
if(tr != null){
tr.parentNode.removeChild(tr);
}else{
throw new Error("the given object is not contained by the table");
}
}
</script>
</head>
<body>
<table border = "1">
<tr>
<td>A<input type="button" value="A" οnclick="getRowNo(this)">getRowNo<td>
</tr>
<tr>
<td>B<input type="button" value="B" οnclick="delRow(this)">delRow<td>
</tr>
<tr>
<td>C<input type="button" value="C" οnclick="getRowNo(this)">getRowNo</td>
</tr>
<tr>
<td>D<input type="button" value="D" οnclick="getRowNo(this)">getRowNo</td>
</tr>
</table>
</body>
<html>