在HTML表行DOM元素中查找行索引

时间:2013-06-18 16:32:41

标签: javascript jquery html knockout.js html-table

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

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

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

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

但那只返回-1。

有人知道解决方案吗?

3 个答案:

答案 0 :(得分: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()附加事件处理程序

答案 1 :(得分:0)

请改为尝试:

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

希望这能解决您的问题。

答案 2 :(得分:0)

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

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

function callbackFunc(){
   var index = $(this).parent().index(this);
}