如果用户单击html表中的特定列,我该如何获取它的行号和列号。
$("table #id").click(function()
{
//get row and column num
});
答案 0 :(得分:1)
我建议:
$('td').click(function (){
var cell = this,
col = cell.cellIndex + 1,
row = cell.parentNode.rowIndex + 1;
console.log('Row: ' + row + ', column: ' + col)
});
答案 1 :(得分:0)
假设#id
是td
元素:
var myRow = $(this).parent('tr').index();
var myCol = $(this).index();
当然,更复杂的表结构需要更复杂的选择器。您需要显示HTML以获得进一步的帮助。
答案 2 :(得分:0)
这应该是非常直接的:
HTML
<p class="result"></p>
<table>
<tr>
<td>row 1 - cell 1</td>
<td>row 1 - cell 2</td>
<td>row 2 - cell 3</td>
</tr>
<tr>
<td>row 2 - cell 1</td>
<td>row 2 - cell 2</td>
<td>row 2 - cell 3</td>
</tr>
<tr>
<td>row 3 - cell 1</td>
<td>row 3 - cell 2</td>
<td>row 3 - cell 3</td>
</tr>
</table>
JS:
var $result = $(".result");
$("table").on("click", "td", function(e) {
var $tableCell = $(this);
var tableCellNumber = $tableCell.index() + 1;
var tableRowNumber = $tableCell.parent().index() + 1;
var result = "row number: " + tableRowNumber + ", cell number: " + tableCellNumber;
$result.text(result);
});
答案 3 :(得分:0)
尝试以下方法:
$("table tr td").click(function() {
var rowNo = ($(this).parent().index() + 1);
var cellNo = ($(this).index() + 1);
alert("rowNo=" + rowNo + " || cellNo=" + cellNo);
});