0

クリックするとその下の行を展開するjqueryスクリプトがあります。また、テーブルを並べ替えるテーブルソーターjqueryもあります。

問題は、両方のクラスを使用し<tr>て動作するため、競合が発生することです。jqueryはほとんどわかりませんが、展開/折りたたみ行は非常に単純なので、このクエリに小さな変更を加えて、競合を回避できることを期待していました。ソーターjquery

<script type="text/javascript">  
        $(function(){
    $("#table tr:odd").addClass("odd");
        $("#table tr:not(.odd)").hide();
        $("#table tr:first-child").show();
        $("#table tr.odd").click(function(){
        $(this).next("tr").toggle();

        });
        //$("#table").jExpand();
    });
</script> 

修正がいかに簡単かを過小評価しているかもしれませんが、簡単であればそれは素晴らしいことです。テーブルのデザインは単なる標準です

<table>
<thead>
    <tr>
        <th></th>
    </tr>
     <tr>
        <th></th>
    </tr>
 </thead>
 <tbody>
     <tr>
        <td></td>
     </tr>
     <tr>
        <td></td>
 </tr>
 </tbody>
</table>
4

1 に答える 1

2

次のようにして、コードにクラスを追加することを回避できます。

<script type="text/javascript">  
        $(function(){
           $("#table tr").not(':odd').hide();
           $("#table tr:first-child").show();
           $("#table tr").filter(':odd').click(function(){
              $(this).next("tr").toggle();

           });
        //$("#table").jExpand();
    });
</script>

更新:Ohgodwhyのおかげで、jqueryセレクター内で疑似セレクター
の代わりに使用。.filter()

于 2012-10-06T02:38:40.553 に答える