确定div是否包含JQuery中的表元素

时间:2010-04-22 00:00:44

标签: jquery

对于我的手风琴,每次用户点击标题时,我想看看手风琴内容是否包含表格,如果没有,则生成一个并将其添加到accordion-content。但是,如何检查当前元素是否包含某种类型的元素?

   <div class="a-header"> 
      <ul><li></li></ul>
    </div>
    <div class="a-content">
    </div>

    $('.a-header').click(function(){
       var currentHeader = $(this).next();
       //if currentHeader contains 'table'
});

感谢。

3 个答案:

答案 0 :(得分:4)

你快到了:

 $('.a-header').click(function(){
   var currentHeader = $(this).next();
   if (currentHeader.find('table').length > 0) {
       //do stuff
   }
});

答案 1 :(得分:0)

这两个都很好,但更快的选择器是

$(this).next(':not(:has(table))');

答案 2 :(得分:0)

$('.a-header').click(function() {
  if (!$(this).next().has('table').length) {
    // CREATE THE TABLE
  }
});