0

私の MVC アプリケーションでは、ビュー Index.cshtml を作成し、そこで C# 変数を宣言しました。

例: string selectedvalue="";

このIndex.cshtmlで書いたjavascript関数コードでそれを使用する方法で、javascript関数でこの文字列にテキストを追加できますか?

文字列 selectedvalue=""; // コーディング部分 function onchangeFT(e) { '@selectedvalue'= e.value; //e.value はコンボボックスから取得され、"selectedvalue" alert('@selectedvalue') に割り当てられる必要があります。}

それは私にエラーを与えています...

この問題を解決するアイデアはありますか?

4

1 に答える 1

0

この場合、あなたは何をしているのか混乱していると思います。

MVC Razor 構文を使用して C# 変数 @selectedValue を宣言しました。次に、この変数を使用して、クライアントに出力されるコンテンツにその値を挿入できます。ただし、この変数は存在しないため、クライアント側の JavaScript コードからこの変数に割り当てることはできません。エラーは、オブジェクト値を無効なリテラル文字列宣言に実際に割り当てようとしているという事実に関連しています。

あなたの例では

'@selectedValue'=e.value;

に翻訳されます

'' = e.value;

これは、MVC razor が自動的に c# パラメーターをその値に変換し、文字どおりに出力するためです。変数を e.value に割り当てるには、スクリプトが使用可能なターゲット変数として識別するスクリプト ブロックの一部として JavaScript 値を作成する必要があります。

例えば:

var selectedValue = '';
selectedValue = e.value;
于 2012-06-07T15:22:16.057 に答える