1

テーブルのあるビューがあり、各行には「+」記号があり、「+」をクリックすると、その行の詳細が表示されます。そして今、クリックした後にこの「+」を「-」に切り替えようとしましたが、「-」をクリックすると、この行の詳細が非表示になり、これで立ち往生しています。以下は私の見解です

@Html.Grid(Model.Nodes).Sort(sortOptions).Columns(x=>
    {            
        x.For(c => string.Format("<a class='expander' style='color:black;text-decoration:none;' href='showDetail'>" + "{0}" + "</a>", (c.ChildrenCount > 0 && c.EntityType == "TextNode") ? "+" : "")).DoNotEncode();       
    }).Attributes(Class => "DetailTable").Empty("No data.")

<script type="text/javascript">

$(document).ready(function () {

    $(".expander").click(function () {

        //implementation here

        });

        return false;
    });
});
</script>

どんな助けでも大歓迎です!ありがとう

4

1 に答える 1

0

この問題を次のように解決しました。

  • onclick イベントの toggleState 関数を作成しました

  • $(ドキュメント).on

    関数 toggleState(アイテム) {

    if (item.className == "expander") {
        item.className = "expanderOff";
    } else {
        item.className = "expander";
    }
    

    }

    $(document).on("クリック", ".expander", function () {

    });

    $(document).on("クリック", ".expanderOff", function () {

    });

そして、それは完了です。:)

于 2012-11-21T13:24:43.087 に答える