0

次のコードがあります。

JS:

MapSearch.FiltersList = Ember.Object.extend({
        content: [
        Ember.Object.create({textValue: "Gender", actualValue: "gender"}),
        Ember.Object.create({textValue: "Marital Status", actualValue: "msc105"}),
        Ember.Object.create({textValue: "Council Tax Band", actualValue: "thc140"}),
        Ember.Object.create({textValue: "Length Of Residency", actualValue: "mhc117"}),
        Ember.Object.create({textValue: "Household Composition", actualValue: "mhc110"}),
        Ember.Object.create({textValue: "Income Value Banded - Profiling", actualValue: "mgc131"}),
        Ember.Object.create({textValue: "Property Value Banded - Profiling", actualValue: "mgc111"}),
        Ember.Object.create({textValue: "Property Value Banded - 10% UK", actualValue: "mgc112"}),
        Ember.Object.create({textValue: "Landscape Lifestyle", actualValue: "mgc120"}),
        Ember.Object.create({textValue: "UK Lifestyle Group", actualValue: "bgc422"}),
        Ember.Object.create({textValue: "UK Wealth Group", actualValue: "bgc422"})
        ]

});
MapSearch.FilterSelect = Ember.Select.extend({
    attributeBindings: ['name', 'id'],
    contentBinding: 'MapSearch.FiltersList.content'
});

ハンドルバー:

    {{view MapSearch.FilterSelect name="filter_type" id="filter_type" class="filter_type"  optionValuePath="actualValue"   optionLabelPath="textValue"}}

ただし、空白の選択が表示されます。私は何か間違ったことをしていることを知っていますが、何を理解することはできません。

4

1 に答える 1

2

で定義するのではなく、 を作成し、インスタンスを作成してFiltersListみてください。ArrayControllerextend

MapSearch.FiltersList = Em.ArrayController.create({

    content: [
    ....
    ]

})

次のようなバインディングを作成することで、物事をわずかに効率化できることに注意してください

contentBinding: Em.Binding.oneWay('MapSearch.FiltersList.content')

選択入力がコンテンツ値を変更できない場合。

于 2012-12-07T14:25:52.120 に答える