使用jquery获取表格单元格所属的行

时间:2014-05-27 04:57:30

标签: jquery

我试图获取当前被鼠标悬停的单元格的索引以及该行中最后一个单元格的索引

$("table").delegate('td', 'mouseover mouseleave', function (e) {
            if (e.type == 'mouseover') {

                var cell_index = $(this).index(); //this works
                var last_index = $(this).parent('tr').eq(-1).index(); //returns the index of the row, not the cell

我也试过

$(this).parent().eq(-1).index();
$(this).closest('tr').eq(-1).index();
$("table").eq($(this).parent().eq((this).index).index()).eq(-1).index();
//the last one was just for curiosity

这些都不起作用

我想检查一下被鼠标悬停的细胞是否是最后一个细胞。我应该怎么做呢?

2 个答案:

答案 0 :(得分:1)

使用行中的td集合来获取最后一个td索引

var last_index = $(this).closest('tr').find('td').eq(-1).index();

答案 1 :(得分:0)

您可以使用以下代码块获取当前单元格索引和父行的最后一个单元格索引:

您的代码:

$(function() {
    $("table").delegate('td', 'mouseover mouseleave', function (e) {
            if (e.type == 'mouseover') {
                var cell_index = $(this).index(); //this works
                var last_index = $(this).parent('tr').find('td:last-child').index();
            }
    });  
});

更新小提琴:http://jsfiddle.net/7kTdE/1/

示例代码:

$(function() {
    $('td').on('mouseover', function() {
        alert('Current cell index is : ' + $(this).index());
        alert('Last cell index of parent row is : ' + $(this).parent().find('td:last-child').index());
    });
});

示例在这里:http://jsfiddle.net/7kTdE/