我正在使用 ember.select。我试图动态设置值。但这对我不起作用。我附上了我的示例代码。
帮我解决这个问题。
这是我的 Handlebar 模板 血红蛋白:-
{{view Ember.Select
contentBinding="dropDown"
optionValuePath="content.id"
optionLabelPath="content.value"
selectionBinding="obj3" //This is the object am trying to set dynamically. I defined my object in below
}}
//View Model - This is my view model. This model gives the dropdown list
App.MyModel = Em.Object.extend({
id:{
},
dropDown:[
{id:"1",value:"test1"},
{id:"2",value:"test2"},
{id:"3",value:"test3"}
]
});
// Model - Here is my data model. I want to update obj3 with dropdown list value.
DataModel = Em.Object.extend({
obj1:"",
obj2:"",
obj3:null
});
// Create obj. Initially am trying to set default value for my dropdown.
var dataModel = DataModel.create({
obj1:"value1",
obj2:"value1",
obj3:{id:"1",value:"test1"}
})
最佳答案
您必须将选定的值保留在应用程序的某个位置,并将 Em.Select
的 valueBinding
设置为该路径,例如:
window.App = Em.Application.create()
App.ApplicationRoute = Em.Route.extend({
model: function() {
return [
{id: 1, text: "ein"},
{id: 2, text: "zwei"},
{id: 3, text: "polizei"}
];
}
});
App.ApplicationController = Em.ObjectController.extend({
selected: 2 // will select "zwei"
});
在上面的 ApplicationController
中,我创建了一个属性 selected
,它保留了我想要动态选择的对象的 id
组合,然后在我的模板中按如下方式设置绑定(bind):
<script type="text/x-handlebars">
{{view Ember.Select contentBinding="content"
optionLabelPath="content.text"
optionValuePath="content.id"
valueBinding="controller.selected"}}
</script>
你可以在这里看到一个工作的 fiddle http://jsfiddle.net/schawaska/zfVP8/
关于javascript - 我该如何使用 Ember.Select ?如何设置默认选择的项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14919218/