jquery - 获取表中单击的td的位置编号

时间:2014-07-01 06:53:55

标签: javascript jquery html

<table>
   <tr>
      <td>me</td>
      <td>you</td>
      <td>we</td>
   </tr>
</table>

使用Jquery我想知道点击了哪个childrin并获得了这个childrin的数量。例如,如果我点击you,我想获得2,如果we,则3 ..如果me,则为1。

在Jquery中有类似.nthchild();的东西吗?

这是我的小提琴测试:http://jsfiddle.net/vfp9x/

3 个答案:

答案 0 :(得分:9)

在现场演示中,$(this).index()只需使用table你的ID也有错误,它应该是table1

请记住,索引是基于零的,因此第一个元素为0,第二个元素为1,依此类推。

<强> Live Demo

$('#table1').on('click', 'td', function () {    
    $('#out').text($(this).index()+1);
});

.index()

  

如果没有将参数传递给.index()方法,则返回值为   一个整数,表示第一个元素在其中的位置   jQuery对象相对于它的兄弟元素。

答案 1 :(得分:3)

尝试,

$('#table1').on('click','td',function(){
    var child_number = $(this).closest('tr').find('td').index(this);
    $('#out').text(child_number);
});

DEMO


根据建议的其他答案提供程序,只需使用.index(),并保持这种获取索引的方式。它会对你在其他一些情况下有所帮助,比如从元素集合中获取当前元素的索引(而不是兄弟姐妹之间)

答案 2 :(得分:0)

尝试喜欢

$("#ul").on('click', 'td', function () {
    debugger;
    alert(this.id);    
});

Demo