2013-05-21 81 views
1

我有HTML幾個嵌套表(在本例中只有一個是嵌套):顯示隱藏嵌套表格中的jQuery與選擇

<table class="toptable" border="1"> 
    <tbody>     
     <tr class="accordion"> 
      <td>TD1</td> 
      <td>TD2</td> 
      <td>TD3</td> 
     </tr> 
     <tr> 
      <td colspan="3"> 
      <table class="nested" border="1"> 
       <tbody> 
        <tr> 
         <td>nestedTD1</td> 
         <td>nestedTD2</td> 
        </tr> 
        <tr> 
         <td>nestedTD3</td> 
         <td>nestedTD4</td> 
        </tr> 
       </tbody> 
      </table>   
      </td> 
     </tr> 
    </tbody> 
</table> 

我的jQuery讓我展示/點擊隱藏主表的第二行在第一行。

$(function() { 
    $(".toptable tr:not(.accordion)").hide(); 
    $(".toptable tr:first-child").show(); 
    $(".toptable tr.accordion").click(function(){ 
    $(this).nextAll().fadeToggle(); 
    }); 
    }); 

工作例子是在這裏:http://jsfiddle.net/nbag/pAxry/1/

我的問題是嵌套表的只有第一行顯示。我想在jQuery的樹遍歷問題;我試圖將nextAll()更改爲find("*"),但它不起作用。

非常感謝您的幫助!

回答

1

我認爲問題出在隱藏表格行的第一個選擇器中。試試這個(demo):

$(function() { 
    $(".toptable > tbody > tr:not(.accordion)").hide(); 
    $(".toptable tr:first-child").show(); 
    $(".toptable tr.accordion").click(function() { 
     $(this).next().fadeToggle(); 
    }); 
}); 
+0

非常感謝!它正在工作! –