我想使用Ember.js Select Built-in View并在选择更改时调用操作。但是id并没有调用action.i在jsbin上创建一个示例。
var App = Ember.Application.create();
App.Router(function(){
this.route("application");
});
App.ApplicationRoute = Ember.Route.extend({
model:function(){
return [{id:1,name:'hello'},{id:2,name:'goodbye'}];
}
});
App.ApplicationController = Ember.ArrayController.extend({
actions:{
selectedPosts:function(){
alert("IM Changed");
}
}
});
这把手把代码:
<script type="text/x-handlebars" data-template-name="application">
{{view Ember.Select viewName="select"
contentBinding="content"
optionLabelPath="content.name"
optionValuePath="content.id"
prompt="Pick a person:"
selectionBinding="selectedPosts"}}
</script>
答案 0 :(得分:0)
您想要的是所选值的观察者:
App.ApplicationController = Ember.ArrayController.extend({
selectedPostsChanged:function(){
alert("IM Changed");
}.observes("selectedPosts")
});
请参阅jsbin
另一种选择是对本机Ember选择进行子类化并在其上设置更改事件:
App.MySelect = Ember.Select.extend({
change: function(event){
this._super(event);
alert("Changed!");
}
})
请参阅jsbin