获取父元素的类

时间:2013-06-14 13:26:42

标签: jquery html

我有以下HTML标记:

<div class="nav">
   <ul>
      <li class="tab1">
         <a href="#1" class="current">Welcome</a>
      </li>
      <li class="tab2">
         <a href="#2">About</a>
      </li>
      <!-- and some lists more -->
   </ul>
</div>

我想找到class的孩子的父元素的.current

var currentli = $('.nav').find('a.current').parent().attr('class');
console.log(currentli);

但它总是让我undefined

注意:我不知道哪个a目前有.current这就是我必须使用.find()方法的原因。

3 个答案:

答案 0 :(得分:35)

您的代码应该已经有效,但访问属性className可能更可靠:

var currentli = $('.nav').find('a.current').parent().prop('className');

答案 1 :(得分:1)

这将有效:

var currentli = $($('.nav').find('a.current')).parent().attr('class');
console.log(currentli);

我只是将找到的集合再次转换为jQuery对象。

请参阅小提琴:http://jsfiddle.net/RaphaelDDL/wnW4u/

Ps。:如果多个aclass="current",则只会检索第一个。

答案 2 :(得分:0)

jQuery(function($) {
  console.log($('.nav a.current').parent().prop('className'));
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
<div class="nav">
  <ul>
    <li class="tab1">
      <a href="#1" class="current">Welcome</a>
    </li>
    <li class="tab2">
      <a href="#2">About</a>
    </li>
    <!-- and some lists more -->
  </ul>
</div>