私の要件は、一連のオプションをユーザーに表示する必要があるということです。私は口ひげテンプレートを使用して、CanJS JavaScript フレームワークを使用してオプションをレンダリングしました。
ここでの問題は、次のようなオプションをレンダリングしようとしているときです: Potato Rs. 12
口ひげのテンプレートが HTML をエスケープしており、HTML タグで値を表示しています。
テンプレートで {{{ }}} も使用しましたが、役に立ちません。
同じようにフィドルを確認してください。
http://jsfiddle.net/arvi87/22CU8/1/
私の口ひげ テンプレート:
{{#options}}
<option value="{{value}}" {{#selected}}selected{{/selected}}>{{{display}}}</option>
{{/options}}
テンプレートにデータをバインドしているサンプル コントロール:
var frag = can.view('{{' +this.options.view+ '}}',{
/*
I am passing observe here which is escaping the HTML tags like:
Cabbage <span>Price: Rs.12</span>
*/
options: arrayObserver
/*
This is rendering properly. Not sure about what is the difference ?
Cabbage Price: Rs.12
*/
//options: array
});
私のオプション配列:
var array = [{
selected: true,
display: "None"
},{
selected: false,
display: "Tomato"
},{
selected: false,
display: "Potato <span>Rs.10</span>"
},{
selected: false,
display: 'Cabbage <span>Price: Rs.12</span>'
}];
arrayObserver = new can.Observe.List(array);
どんな助けでも素晴らしいでしょう。
ありがとう。