web-dev-qa-db-ja.com

MVC3 Razorビューエンジンでjavascript変数を使用する

出来ますか?

@Html.ActionLink( "Link text", "Action Name", new { id = *JAVASCRIPT VARIABLE* })

サンプルコードで説明してください。

30
Mohammed Faruk

いいえ。それは不可能です。NETMVC 3はサーバー側コードであり、クライアントに送信される前に評価され、javascriptはクライアント側で一度だけ実行されるクライアント側コードであるためです。

ただし、逆も可能です。

var jsVar = "@yourMvcVar";
15
Darko Z

実際には次の場合に非常に可能です:

var hello = "Great Job!";

var text = "@Html.ActionLink( "Link text", "Action Name", new { id = "JSVar" })"
text = text.replace("JSVar",hello);

それと同じくらい簡単! :)

@ Html.Actionリンクが行うことは、URL文字列を作成することだけです

76
krilovich