2

テーブルがあります。テーブルの行は、その行の最後の td を除いてクリック可能である必要があります。クリックすると、新しい URL への新しいウィンドウが開きます。

ただし、同じ表の行で、最後の td をクリックして表の行を展開して詳細を確認できるようにする必要があります。現時点ではこれが機能していますが、1つの td をクリックできるのではなく、行全体がクリック可能です(これは望ましくありません)。

拡張テーブル行のコードは次のとおりです: -

$("#report tr:odd").addClass("odd");
        $("#report tr:not(.odd)").hide();
        $("#report tr:first-child").show();

        $("#report tr.odd").click(function(){
            $(this).next("tr").toggle();
            $(this).find(".arrow").toggleClass("up");

        });

したがって、全体として、最後のtdを期待して行をクリックできる必要があります。

行全体ではなく、その td をクリックしてテーブル行を展開できるようにしたい最後の td ですか?

どんな助けでも素晴らしいでしょう-私はそれを書く方法がわからないだけで、私が必要なものを知っています.

4

1 に答える 1

3

clickイベントを全体に適用するtr代わりに、次のように関連するセルに適用できます。

$("#report tr.odd td:not(:last-child)")

td行の最後のものを除いて、行のすべてを選択します。

次にアクセスするにはtr、そのセレクターも変更する必要があります。

$(this).parent().next("tr").toggle();

tdこれにより、クリックした (a )の親が取得されtr、次のものが見つかります。.arrowクラスが tr に適用される場合、同じことが発生する必要があります。

$(this).parent().find(".arrow").toggleClass("up");
于 2012-07-19T10:38:39.763 に答える