2016-06-08 44 views
0

我想添加一个类打开元素类菜单当用户点击THEAD TR日,如下表我的如何添加一个类到一个元素时,在jQuery中点击了表?

这是我的表

<div><ul> 
<li class="menus"> 
    <a></a> 
    <ul><li> 
    <table id="tableid "> 
     <thead> 
      <tr><th></th><th></th><th></th></tr> 
     </thead> 
     <tbody> 
      <tr id="1"> 
       <td></td> 
       <td id="type1">types1</td> 
       <td></td> 
       <td id="types2">types2</td> 
       <td></td> 
      </tr> 
      <tr id="2"> 
       <td></td> 
       <td id="type1">types3</td> 
       <td></td> 
       <td id="types2">types4</td> 
       <td></td> 
      </tr> 
      </tbody> 
     </table> 
    </li> 
    </ul> 
</li></ul></div> 

JS

$(document).on('click','#tableid thead tr th', function(){ 
    var parents = $(this).prevAll().find('li') 
    console.log(parents) 

}); 
+2

HTML结构是无效的。 'div'不能成为'ul'和'tbody'的一部分....嗯,'

'哪里? – Tushar

+0

使用手风琴而不是...如果我明白你想要做什么 –

+0

你的表创建语法不正确。请更新您的代码 – GSB

回答

2

使用.parents.addClass

$(document).on('click','#tableid thead tr th', function(){ 
    var parents = $(this).parents('li.menus').addClass('open') 
    console.log(parents) 
}); 
+0

我已经使用此var父母= $(this).offsetParent()。offsetParent()。offsetParent();虽然它的工作,但它应该更好,或者我们应该使用循环来找到它或什么 –

+0

有没有用它来使用循环,你的代码可能工作完美,但由于其冗长而没有必要,我们应该选择'.parents' –

相关问题