2

以下は、ドロップダウンに値をデフォルト設定するスニペットです。

App.selectedOption.set("option","1");

ただし、デフォルト値のonloadでドロップダウンが選択されるのはわかりません。ここでの問題は何でしょうか?

Emberドロップダウンのスニペット

<script type="text/x-handlebars">
    {{#view App.SortSampleView  }}
      {{view Ember.Select
             contentBinding="App.viewSampleController"
             selectionBinding="App.selectedOption.option"
             optionLabelPath="content.name"
             optionValuePath="content.id" class="dropdown"
         prompt="Select..." }} 
    {{/view}}    
</script>

選択バインディングのスニペット:

App.selectedOption= Ember.Object.create({option:null});
4

1 に答える 1

3

これは既知の問題です。課題トラッカーの#482を参照してください。ディスカッションでは、を設定して選択したオプションを設定することはサポートされていないと述べています。valuePath代わりに、特定のオブジェクトをそのオブジェクトとして設定する必要がありますselectedhttp://jsfiddle.net/pangratz666/NgXpF/を参照してください。

ハンドルバー:

<script type="text/x-handlebars">
      {{view Ember.Select
             contentBinding="App.viewSampleController"
             selectionBinding="App.selectedOptionController.option"
             optionLabelPath="content.name"
             optionValuePath="content.id" class="dropdown"
         prompt="Select..." }} 
</script>​

JavaScript :

App.viewSampleController = Ember.ArrayProxy.create({
    content: [],
    addObject: function(id, name){
        this.pushObject(Ember.Object.create({
            id: id,
            name: name
        }));
    }
});

App.selectedOptionController = Ember.Object.create({
    option: null
});

App.viewSampleController.addObject(1, 'first');
App.viewSampleController.addObject(2, 'second');
App.viewSampleController.addObject(3, 'third');

var second = App.viewSampleController.objectAt(1);
App.selectedOptionController.set('option', second);
于 2012-05-21T12:40:12.400 に答える