关于js操作table的问题 比如有一个N行N列的table,里边的每个td都有click事件,当click事件触发的时候,怎样才能知道鼠标点击的是哪一行哪一列的td??? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 thisonclick="alert(this.id)"你写函数的时候可以传一个this.id参数过去,就知道你点的是哪个了。 <html> <head> <script language="javascript"> function doclick() { var td = event.srcElement; // 通过event.srcElement 获取激活事件的对象 td alert("行号:" + (td.parentElement.rowIndex + 1) + ",内容:" + td.innerText); } </script> </head> <body> <table onclick="doclick()"> <tr> <td> 9:00 </td> <td> 10:00 </td> </tr> <tr> <td> 11:00 </td> <td> 12:00 </td> </tr> </table> </body> </html> <table width="200" border="1"> <tr id="tr1" onclick="alert(this.id);"> <td> </td> <td> </td> <td> </td> </tr> <tr id="tr2" onclick="alert(this.id);"> <td> </td> <td> </td> <td> </td> </tr> <tr id="tr3" onclick="alert(this.id);"> <td> </td> <td> </td> <td> </td> </tr></table> jquery操作,简洁明了,统统都获取到了。希望对楼主有帮助<body> <table id="mytable"> <tr> <td> 111111 </td> <td> 22222 </td> </tr> <tr> <td> 33333 </td> <td> 44444 </td> <td> </td> </tr> <tr> <td> 55555 </td> <td> 66666 </td> <td> 77777 </td> </tr> </table></body></html><script> $(function () { //跟id为mytable下面的td绑定点击事件 $("#mytable td").click(function () { //获取当前td的父节点tr,然后查找当前td在第几列。 var tdSeq = $(this).parent().find("td").index($(this)[0]); //查找当前tr在第几行。 var trSeq = $(this).parent().parent().find("tr").index($(this).parent()[0]); alert("第" + (trSeq + 1) + "行,第" + (tdSeq + 1) + "列,值" + $(this).text()); }); });</script> <TABLE border="1"> <TR> <TD onclick="fun(this)">aaa</TD> <TD onclick="fun(this)">bbb</TD> <TD onclick="fun(this)">ccc</TD> </TR> <TR> <TD onclick="fun(this)">ddd</TD> <TD onclick="fun(this)">eee</TD> <TD onclick="fun(this)">fff</TD> </TR> </TABLE> <SCRIPT LANGUAGE="JavaScript"> <!-- function fun(TDobj){alert("第"+(TDobj.parentNode.rowIndex+1) +'行,第'+(TDobj.cellIndex+1)+"列")} //--> </SCRIPT> web ie8下location.href不跳转! 服务器端控件能否使用JSValidation验证框架进行验证? eval问题,搞不明白。 請教一段javascript代碼 十六进制转ascii码 如何定义一个window showModalDialog 弹出的“网页对话框”,如何让对话框中的内容变得像普通网页一样可被选取/复制 在jsp页面中如何使用javascript得到客户机的IP地址? 关于javascript的学习过程! 如何自动跳到下一个输入框?(不是按回车,有难度) 图片浏览器
你写函数的时候可以传一个this.id参数过去,就知道你点的是哪个了。
<head>
<script language="javascript">
function doclick()
{
var td = event.srcElement; // 通过event.srcElement 获取激活事件的对象 td alert("行号:" + (td.parentElement.rowIndex + 1) + ",内容:" + td.innerText);
}
</script>
</head>
<body>
<table onclick="doclick()">
<tr>
<td>
9:00
</td>
<td>
10:00
</td>
</tr>
<tr>
<td>
11:00
</td>
<td>
12:00
</td>
</tr>
</table>
</body>
</html>
<table width="200" border="1">
<tr id="tr1" onclick="alert(this.id);">
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr id="tr2" onclick="alert(this.id);">
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr id="tr3" onclick="alert(this.id);">
<td> </td>
<td> </td>
<td> </td>
</tr>
</table>
<table id="mytable">
<tr>
<td>
111111
</td>
<td>
22222
</td>
</tr>
<tr>
<td>
33333
</td>
<td>
44444
</td>
<td>
</td>
</tr>
<tr>
<td>
55555
</td>
<td>
66666
</td>
<td>
77777
</td>
</tr>
</table>
</body>
</html>
<script>
$(function () {
//跟id为mytable下面的td绑定点击事件 $("#mytable td").click(function () {
//获取当前td的父节点tr,然后查找当前td在第几列。 var tdSeq = $(this).parent().find("td").index($(this)[0]);
//查找当前tr在第几行。 var trSeq = $(this).parent().parent().find("tr").index($(this).parent()[0]);
alert("第" + (trSeq + 1) + "行,第" + (tdSeq + 1) + "列,值" + $(this).text());
});
});
</script>
<TABLE border="1">
<TR>
<TD onclick="fun(this)">aaa</TD>
<TD onclick="fun(this)">bbb</TD>
<TD onclick="fun(this)">ccc</TD>
</TR>
<TR>
<TD onclick="fun(this)">ddd</TD>
<TD onclick="fun(this)">eee</TD>
<TD onclick="fun(this)">fff</TD>
</TR>
</TABLE>
<SCRIPT LANGUAGE="JavaScript">
<!--
function fun(TDobj){alert("第"+(TDobj.parentNode.rowIndex+1) +'行,第'+(TDobj.cellIndex+1)+"列")}
//-->
</SCRIPT>