0

我现在只在 Knockout 和 jQuery 中设置了一个表,我需要能够找到单击以进行选择的行的行索引。我进行了设置,以便我的表由 Knockout 可观察数组填充,并且我的表行单击事件由以下函数处理:

$("#table tr").live("click", callbackFunc(position));

但是正如您所看到的,我需要将被单击的行的位置传递给函数才能使其工作。我尝试的最后一件事是:

$("tr",$(this).parent("#table")).index(this)

但这只返回-1。

有人知道解决方案吗?

4

3 回答 3

2

你可以在 jquery 中做这样的事情

$("#table tr").on("click", function()
{
$(this).prevAll("tr").size();        //this will return all tr before current tr 
                                     //i.e current row index

});

从 jQuery 1.7 开始,不推荐使用 .live() 方法。使用 .on() 附加事件处理程序

于 2013-06-18T16:40:03.730 回答
0

试试这个:

$("#table").index(this)

希望这能解决您的问题。

于 2013-06-18T16:39:12.363 回答
0

你应该像这样使用 jQuery 的 .index() 方法

$("#table tr").live("click", callbackFunc);

function callbackFunc(){
   var index = $(this).parent().index(this);
}
于 2013-06-18T16:40:15.337 回答