jQuery中的表行和列号

我如何获得使用jQuery单击表格单元格的行号和列号,即,

$("td").onClick(function(event){ var row = ... var col = ... }); 

您可以在给定的上下文中使用Core / index函数,例如您可以检查其父TR中TD的索引以获取列号,并且可以检查Table上的TR索引以获取行号:

 $('td').click(function(){ var col = $(this).parent().children().index($(this)); var row = $(this).parent().parent().children().index($(this).parent()); alert('Row: ' + row + ', Column: ' + col); }); 

检查一个正在运行的例子。

 $('td').click(function() { var myCol = $(this).index(); var $tr = $(this).closest('tr'); var myRow = $tr.index(); }); 

从我的头顶上,有一个办法就是抓住以前的所有元素并计算它们。

 $('td').click(function(){ var colIndex = $(this).prevAll().length; var rowIndex = $(this).parent('tr').prevAll().length; }); 

点击获取COLUMN INDEX:

 $(this).closest("td").index(); 

点击获取ROW INDEX:

 $(this).closest("tr").index(); 

您可以在创build表格时在单元格中输出数据吗?

所以你的表看起来像这样:

 <table> <thead>...</thead> <tbody> <tr><td data-row='1' data-column='1'>value</td> <td data-row='1' data-column='2'>value</td> <td data-row='1' data-column='3'>value</td></tr> <tbody> </table> 

那么这将是一件简单的事情

 $("td").click(function(event) { var row = $(this).attr("data-row"); var col = $(this).attr("data-col"); } 

它更好地绑定到整个表的点击处理程序,然后使用event.target获得点击的TD。 这就是所有我可以添加到这个凌晨1:20