0

ディクショナリの値を呼び出し、それを '_' で分割しようとする JavaScript 関数を作成しようとしています。問題は、ディクショナリから値を取得するためのキーが、ドロップダウン リストから抽出された Javascript var にあることです。Javascript内のc#関数内でJavascript varを使用することは可能ですか?

現在のコード:

var Category = document.getElementById('Properties').value;
var Name = document.getElementById(Category).value;
Category = '@Model.Dictionary[Name].Split('_')[0]';

編集:

人々は私の問題を誤解しています。.Split 関数は機能しますが、Dictionary[Name] が問題を引き起こしています。私が入ると

var Category = document.getElementById('Properties').value;
var Name = document.getElementById(Category).value;
Category = '@Model.Dictionary["Bicycle"].Split('_')[0]';

コードでは完全に機能しますが、「自転車」の部分を DropDownList から動的に取得したいと考えています。

編集2:

さて、私が状況を考えすぎており、私がやろうとしていることは必要以上に多くの作業が必要であると判断し、より良い解決策を見つけました。私を助けようとしたすべての人に感謝します.

4

3 に答える 3

1

クライアント側とサーバー側の間で少し混乱しています。このようなサーバー側コードと対話するには、サーバーに投稿するか、AJAX コールバックを記述してサーバー メソッドを呼び出す必要があります。

http://mikehadlow.blogspot.com/2008/10/mvc-framework-and-jquery-ajax-heaven.html

于 2012-02-06T15:37:58.500 に答える
0

いいえ、それは不可能です。すべてのサーバーコードはページがブラウザに送信される前に実行され、すべてのクライアントコードは後で実行されます。

クライアントコードで辞書を使用するために必要なことは、サーバー側からJavascriptコードを作成することです。これにより、クライアント側で辞書が再作成されます。

それが不可能な場合は、サーバーに対してAJAX呼び出しを行う必要があります。

于 2012-02-06T15:46:49.503 に答える
0

DropDownList の Value と Text に異なる値を持たせることで、この問題を完全に回避しました。これにより、Text を変更せずに、DropDownList の Value から Dictionary にあった必要な入力を取得できます。

于 2012-02-08T10:29:57.020 に答える