val*_*alk 1 checkbox templates components ember.js
我创建了一个组件,可以正确设置值的复选框.他们也可以响应点击事件,所以在hbs模板中有一个循环,它呈现如下的复选框:
<input class="conditions" type="checkbox" value="{{c.id}}"
{{action "conditionChecked" r preventDefault=false}}
checked={{c.checked}} />{{c.name}}
Run Code Online (Sandbox Code Playgroud)
在组件中我有actions:包含conditionChecked钩子.钩子有c参数,这是我从模板传递的,它也具有checked始终等于的属性true.
如何根据用户的选择(选中/取消选中)访问复选框的实际状态?
编辑:我是Ember.js的新手.如果你能提供一个例子的链接,那就太好了.
好吧,首先我会建议您使用Ember {{input type="checkbox" checked=someControllerProperty}}.这会将检查的值作为布尔值绑定到您传递给input帮助程序checked属性的任何控制器属性.不需要所有的行动.它是Ember,有双向绑定,所以将一个真值传递给这个帮助器将呈现一个带复选标记的复选框.
如果你必须走的路(你似乎正在与框架作斗争),在你的conditionChecked行动中,你可以使用方便的花花公子视图助手jquery选择器功能this.$()并找到你的复选框.找到后,观察其检查属性,并设置一些值.我得说,你在这里重新发明轮子,因为这正是内置input type="checkbox"助手的作用