1

私は、いくつかのルート値と html 属性の両方を my ActionLink.

だから、私は次のコードを持っています。最初の 3 つのパラメーターは、テキスト、アクション名、およびコントローラーです。次に、ルート値を追加してから、HTML 属性を追加しようとします。

@Html.ActionLink("What is this", "Pages", "Root", new { @slug = "what-is-this" },new{@class="dropdown-toggle", @data-toggle="dropdown"})

Web サイトを実行すると、このアクション リンクを含むビューを示すエラー メッセージが表示されます。External component has thrown an exception.

だから、私の質問は次のとおりだと思います:このアクションリンクにhtml属性を追加するにはどうすればよいですか? 私は何を間違っていますか?

4

2 に答える 2

5

は使用できませんが@data-toogle、アンダースコアを使用する必要があります。したがって、リンクは次のようになります。

@Html.ActionLink("What is this", "Pages", "Root", new { slug = "what-is-this" },new{@class="dropdown-toggle", data_toggle="dropdown"})

残りは MVC によって行われ、あなたdata_toggleは に変換されdata-toggleます。@また、すべてのアイテムで使用する必要はありません。のような予約済みの C# キーワードを使用する場合にのみ使用しますclass

于 2013-08-05T17:52:52.187 に答える
4

問題は にあり@data-toggleます。

名前にダッシュを含めることはできません。クライアントで "-" をレンダリングする必要がある場合は、"_" を使用できます。MVC は "-" をレンダリングします。

@Html.ActionLink("What is this", "Pages", "Root", new { @slug = "what-is-this" },new{@class="dropdown-toggle", @data_toggle="dropdown"})
于 2013-08-05T17:53:37.383 に答える