Ember guide on binding data attributesは、 "ブール値でデータバインディングを使用すると、指定された属性を追加または削除します。この機能を使用してselected
の属性を<option>
に動的に設定しようとしています。私は動的にdisabled
属性を設定できますが、selected
属性は常に省略されます。ブール値がtrueかfalseかは問いません。この与えられた`<option>`タグに `selected`属性を動的に設定する方法はありますか?
テンプレートをハンドルバー:
<option disabled={{false}} selected={{false}}>One</option>
<option disabled={{true}} selected={{true}}>Two</option>
私は、次のHTMLを取得:selected={{true}}
がレンダリングされた出力でselected
属性を生成しないのはなぜ
<option>One</option>
<option disabled>Two</option>
を?
もう少し文脈を与えるために、私はこの記事をHow to do a select in Ember 2.0に従っています。この記事で説明した方法を使用すると、選択したコントローラがonchange
イベントを発生したときに、コントローラのデータを正常に更新できますが、DOMは変更を反映して更新されません。
this ember-twiddleには、2つのselect
要素が含まれています。 1つはselect={{bool}}
を使用していますが、これは私が望むように動作しません。もう片方は長針の{{#if bool}}...{{else}}...{{/if}}
を使っていますが、これはうまくいくものの、ひどいです。
は 'selected'は財産ではなく、属性であります値 – Sonny
あなたは '{{true}} 'と' {{false}}'をハードコーディングしているという問題がありますか?あなたの例は少し工夫されています。 '{{true}} 'と' {{false}}'をハードコーディングする代わりに、 'selected'属性の有無をハードコードすることができます。 –
@ChrisPeters私は '{{true}}'と '{{false}}'のような見た目を考案しましたが、私はこの例を単純にしたいと思いました。 '{{}}'が 'true'または' false'を返す計算されたプロパティを参照すると、結果は同じになります。 – nelstrom