1

いくつかのテーブルがあるページがあります。各テーブルの最初の行は正常ですが、残りの行にはクラスが非表示になっているため、ロード時に表示されません。テーブルの最初の行のセルの1つに、クリックして詳細を表示するためのリンクがあります(そのテーブルの非表示の行でフェードインします)。しかし、これを機能させるのに苦労しています。したがって、基本的には、クリックされた要素と同じテーブルにあるすべての非表示の行を検索して、フェードインできるようにするセレクターが必要です。

$(.hidden).fadeIn() 

ただし、ページに複数のテーブルがあるため、すべてのテーブルのすべての非表示行でフェードインするため、特定のテーブルのテーブルが必要です。私も使用しました:

$(this).closest('tr').next(".hidden").fadeIn("slow") 

これは半分でしたが、そのテーブルの最初の非表示の行でフェードインするだけですが、複数ある場合は、残りはまだ非表示になっています。どんな助けでも大歓迎です。ありがとう

4

2 に答える 2

2

試す -

$(this).closest('tr').nextAll(".hidden").fadeIn("slow"); 

nextAll の詳細なドキュメント -

http://api.jquery.com/nextAll/

于 2010-10-20T08:24:23.120 に答える
1

そうですよね?

<table>
<tr>
  <td><span class="show">View more details</span></td>
</tr>
<tr class="hidden">...</tr>
....
</table>

それから

    <script type="text/javascript">
        $(document).ready(function() {
          $(".show").click(function() {
              $(this).closest('table').find('tr.hidden').fadeIn("slow");
          });
        });
   </script>
于 2010-10-20T08:23:01.693 に答える