我想的笨方法是这样的:
function showCol(o){
for(var m=0;m<oTBody.childNodes.length;m++){
if(o.parentNode.childNodes[m]==o){
break;
}
}
alert(m);
}...............
<td>onclick="showCol(this)"</td>
...............应该有更好的方法吧。。
function showCol(o){
for(var m=0;m<oTBody.childNodes.length;m++){
if(o.parentNode.childNodes[m]==o){
break;
}
}
alert(m);
}...............
<td>onclick="showCol(this)"</td>
...............应该有更好的方法吧。。
然后onclick的时候返回this,写一个alert(this.id)就是他所在的行数。这样不用每次点击都遍历一遍表格
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>new page</title>
<script>
function a(){
var obj=event.srcElement;
var num=obj.parentNode.childNodes.length;
while(obj.nextSibling!=null){
obj=obj.nextSibling;
num--;
}
alert("你选种的第"+num+"列!");
}
</script>
</head>
<body>
<table border="1" width="100%" id="table1" onclick="a()">
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
</table>
</body>
</html>
for(var m=0;m<o.parentNode.childNodes.length;m++){
if(o.parentNode.childNodes[m]==o){
break;
}
}
alert(m);
}...............
<td>onclick="showCol(this)"</td>
...............m<oTBody.childNodes.length ==> m<o.parentNode.childNodes.length
var obj=event.srcElement;
var num=obj.parentNode.childNodes.length;
while(obj.nextSibling!=null){
obj=obj.nextSibling;
num--;
}--------------------------------------
这方法好像和我的差不多的?但让我学到了event.srcElement,以后不用再多写一个参数了,谢谢lihui_shine(浪尖赏花)同志。