1

JSONデータのblobに基づく要素でhtml<select>リストを埋めています。<option>文字列補間を使用してコードを整理したいのですが、正しく置換する値を取得できません。

動作するコードは次のとおりです(補間なし)。

$list
.empty()
.append('<option value="' + item.Id + '">' + item.Name + '</option>' for item in data)

これが私が物事をやりたい方法です(動作しません):

$list
.empty()
.append('<option value="#{item.Id}">#{item.Name}</option>' for item in data)

これが私が使用しているJSONの例です:

[
  {"Id":"1","Name":"Client-1"},
  {"Id":"2","Name":"Client-2"}
]

置換は発生しません。代わりに、正しい数の文字列で満たされたリストを取得し#{item.Name}ます。

このようなforループ内でCoffeeScript文字列補間を使用することは可能ですか?

ありがとう。

4

1 に答える 1

7

文字列補間は、二重引用符で囲まれた文字列でのみ機能し、アポストロフィで引用された文字列では機能しません。

http://coffeescript.org/#strings

これは機能するはずです:

$list
.empty()
.append("<option value=\"#{item.Id}\">#{item.Name}</option>" for item in data)
于 2013-03-12T14:44:30.050 に答える