单击其内容后,JQuery获取tr <a></a>

时间:2010-03-25 19:23:21

标签: jquery

假设我有

<table>
  <tr>
    <td><a class='ilink'> link text </a></td>
    <td></td>
    <td></td>
  <tr>
  <tr>
    <td><a class='ilink'> link text </a></td>
    <td></td>
    <td></td>
  </tr>
</table>

在jquery代码中,单击链接后,我想突出显示链接所在的整个表行。但是我该如何找到它?

3 个答案:

答案 0 :(得分:7)

您可以使用.closest()执行此操作:

$("a.ilink").click(function() {
  $(this).closest("tr").addClass("highlight");
});

如果你有很多行,这会更有效率(一个副本,每个<a>一个):

$("table").delegate("a.ilink", "click", function(){
  $(this).closest("tr").addClass("highlight");
});

答案 1 :(得分:1)

#EDIT remove...  better options listed

答案 2 :(得分:0)

$(document).ready(function(){
    $('a.ilink').click(function() {
        $('tr').removeClass('highlight');
        $(this).closest('tr').addClass('highlight');
    });
 });

然后你需要定义高亮css类:

.hightlight { background-color:red; }