如何获取ember应用程序中控制器中模板复选框的值 [英] How to get the value of a checkbox of a template in the controller in ember app
问题描述
这是我的模板:
< script type =text / x-handlebars>
{{view Ember.TextField valueBinding =firstnameplaceholder =First Name}}
< input type =checkboxname =remember_me>记住我< / input>
< button {{action save}}>保存< / button>
< / script>
这是我的控制器:
App = Ember.Application.create();
App.ApplicationController = Ember.Controller.extend({
save:function(){
//需要在这里获取remember_me的值
alert(this.get (firstname));
}
});
如何在控制器中获取remember_me(无论是否被检查)的值。可以在复选框上进行valueBinding操作。如果是这样,可以给我一个示例语法。
jsfiddle:
您应该可以使用ember提供的输入
帮助器(请参阅 docs )。
{{input type =checkboxchecked = remember_me}}
要获取在控制器上设置的模型,请使用 this.get('model')
。
所以,要获得 remember_me
属性来自模型,它只是简单的
this.get('model')。get('remember_me')
假设 remember_me
是一个布尔属性,这应该返回 true
或 false
。
请参阅 jsbin 。
编辑
我没有意识到,默认情况下,控制器将委托给它的模型,所以
this .get('remember_me')
应该工作。
I am trying to find whether the checkbox is checked or not in a controller.
Here's my template:
<script type="text/x-handlebars">
{{view Ember.TextField valueBinding="firstname" placeholder="First Name"}}
<input type="checkbox" name="remember_me"> Remember me </input>
<button {{action save }}>Save</button>
</script>
Here's my controller:
App = Ember.Application.create();
App.ApplicationController = Ember.Controller.extend({
save: function(){
//need to get the value of "remember_me" here
alert(this.get("firstname"));
}
});
How can I get the value of "remember_me" (whether it's checked or not) in the controller. Can I do valueBinding on the check box. If so , can you please give me an example syntax.
jsfiddle:
You should probably use the input
helper that ember provides (see the docs).
{{input type="checkbox" checked=remember_me}}
To get the model that is set on a controller, use this.get('model')
.
So, to get the remember_me
attribute from the model, it's simply
this.get('model').get('remember_me')
Assuming remember_me
is a boolean attribute, this should return true
or false
.
See the jsbin.
EDIT
I didn't realize that by default the controller will delegate to it's model, so
this.get('remember_me')
should work.
这篇关于如何获取ember应用程序中控制器中模板复选框的值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!