2016-05-17 8 views
0

[String, List[String]]のマップをPlayのビューの1つに渡しました。ユーザーがドロップダウンから値を選択しています。この値はマップ内のキーです。私はこのキーを使用して、マップの値を使用して2番目のドロップダウンを入力しています - Stringのリスト。しかし、JavaScriptを使ってキーを取得しているので、Playのテンプレート言語を使用してマップから価値を引き出す方法はわかりません。Scalaでキーを使用してマップ値を取得するPlay Frameworkビュー

これは私のコードです:

function selectSubCat() { 
     var key = $("#monthYear").find(":selected").text(); // get the selected option's text. This is the map key. 

// Here lies the issue. mailingRunDates is the name of the map I've passed to the view. Play says: val key not found. 
     var runDatesList = @mailingRunDates(key) 

答えて

1

私はあなたがplayframeworkテンプレートエンジンとJavaScriptを通信しようとしていると思います。そして、もしあなたがyou are trying to communicate with a controller using ajaxを除いてそれをすることができないのではないかと思います。

コンパイラは、dynamic statementと宣言された変数を探しています。これはサーバーで実行されるコードなので、テンプレートをhtmlに変換すると変更できません。 @{key=12}のようなものを使用して、テンプレートシステムで変数を宣言することができます。

この場合、私はMap[String, List[String]]をすべてjavascriptオブジェクトに展開して、その機能をjavascriptで作成します。

関連する問題