使用jquery访问嵌套的div

时间:2012-06-26 14:15:17

标签: jquery jquery-selectors

我使用tabs

定义JQuery
<div id="tabs">
  <ul>
    <li><a href="#tabs-1">Tab 1</a></li>
    <li><a href="#tabs-2">Tab 2</a></li>
  </ul>

  <div id="tabs-1">
    <table>
      <tr><td>demo</td></tr>
    </table>        
  </div>
  <div id="tabs-2">
    <table>
      <tr><td>demo</td></tr>
      <div id="hello">
        <tr><td>Hello World</td></tr>
      </div>
    </table> 
  </div>

我可以使用简单代码隐藏tabs-1

function hideTabs1() {
   $("#tabs-1").hide(); 
}

如何隐藏“Hello World”字样?

5 个答案:

答案 0 :(得分:2)

试试这个:

$("#hello td").hide(); 

或更好:

$("#tabs-2 td:eq(1)").hide(); 

答案 1 :(得分:1)

试试这个:

$('#hello td').css('visibility', 'hidden');

答案 2 :(得分:1)

试试这个:

$('#hello').css('display', 'none');


<div id="tabs-2">
    <table>
      <tr><td>demo</td></tr>
       <tr  id="hello"><td>Hello World</td></tr>
    </table> 
  </div>

答案 3 :(得分:1)

你应该把HTML固定在这样的东西上,这样才有效:

...
<div id="tabs-2">
   <table>
      <tr><td>demo</td></tr>
      <tr id="hello"><td>
         Hello World
      </td></tr>
   </table> 
</div>
...

然后你就是jQuery:

$("#hello td").hide();

答案 4 :(得分:0)

对我而言,解决方案是一些人的答案的组合。 (我不确定SO协议是什么,所以我回答了我自己的问题,并标记了所有其他答案)

一旦我意识到DIV不能成为TABLE的孩子(谢谢bfavaretto和Sirko),我意识到我可以将表分成两个表,然后给表我想隐藏一个ID(使用Ruben和Ryan关于td)的想法,然后隐藏这个表。

谢谢大家。