jquery如何使用chlid id获取父元素的类?

时间:2016-04-06 10:15:39

标签: javascript jquery html

我尝试使用子ID <th id="first">点击警告表(父)类。

alert($(this).parent('tr').attr('class'));使用此我已获得<tr>的等级。

但是当我使用alert($(this).parent('table').attr('class'));时,我希望得到表的类它显示警告说未定义可以有人帮助我如何使用子ID的父类

<table class="table table-bordered">
    <thead>
      <tr class="sample">
        <th id="first">Firstname</th>
        <th id="last">Lastname</th>
        <th id="user">Username</th>
      </tr>
      </thead>
      <tbody>
         <tr>
           <td>arun </td>
           <td>kumaresh</td>
           <td>arun kumaresh</td>
          </tr>
        </tbody>
   </table>
        </div>

<script>
$(document).ready(function(){
     $("#first").click(function(){
       alert($(this).parent('tr').attr('class'));
  });
});    
</script>

2 个答案:

答案 0 :(得分:2)

使用.closest(TARGET_SELECTOR)对于集合中的每个元素,通过测试元素本身并遍历DOM树中的祖先来获取与选择器匹配的第一个元素。

作为.parent(SELECTOR)获取当前匹配元素集中每个元素的父元素,可选择通过选择器进行过滤。parent()方法遍历直接父母

$(document).ready(function() {
  $("#first").click(function() {
    alert($(this).closest('table').attr('class'));
  });
  $("#last").click(function() {
    alert($(this).closest('thead').attr('class'));
  });
  $(".user").click(function() {
    alert($(this).closest('table').attr('class'));
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<table class="table table-bordered">
  <thead class='ANY_CLASS'>
    <tr class="sample">
      <th id="first">Firstname</th>
      <th id="last">Lastname</th>
      <th class="user">Username</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>arun</td>
      <td>kumaresh</td>
      <td>arun kumaresh</td>
    </tr>
  </tbody>
</table>

答案 1 :(得分:1)

只需使用

alert($(this).closest('table').attr('class'));

在这里提到最近的 https://api.jquery.com/closest/