如果单击其子元素,则如何获取行的id属性?

时间:2010-12-21 23:37:48

标签: jquery row

如何返回链接所在行的id属性?我尝试了不同的变化,但我能得到的最好的是“未定义”......

html看起来像这样:

<tr id="30">
  <td>Parker</td>
  <td><a href="#" id="id783900" class="section-id">Select</a></td>
</tr>

我尝试的其中一件事是:

$("a.section-id").click(function() {
  var parenttr = $(this).parent().parent().attr("id");
  alert(parenttr);
});

我也试过这个:

$("a.section-id").click(function() {
  var parenttr = $(this).parent('tr').attr("id");
  alert(parenttr);
});

3 个答案:

答案 0 :(得分:6)

尝试:

$(this).closest('tr').attr('id');

答案 1 :(得分:0)

parent()仅检查直接父级。要遍历树,请使用parents()。

var parenttr = $(this).parents('tr').attr("id");

编辑:

treeface是正确的。对此用例使用nearest()。 parents()做了你不需要的额外工作。

答案 2 :(得分:0)

$('a.section-id').click(function(e) {
    var parent_id = $(this).parents('tr:first').attr('id');
    alert(parent_id);
    e.preventDefault();
});