Templates 如何在Ember.js中获取复选框状态?
我已经创建了一个组件,它可以正确设置值来呈现复选框。它们还可以响应单击事件,因此在hbs模板中有一个循环,该循环呈现如下复选框:Templates 如何在Ember.js中获取复选框状态?,templates,ember.js,checkbox,components,Templates,Ember.js,Checkbox,Components,我已经创建了一个组件,它可以正确设置值来呈现复选框。它们还可以响应单击事件,因此在hbs模板中有一个循环,该循环呈现如下复选框: <input class="conditions" type="checkbox" value="{{c.id}}" {{action "conditionChecked" r preventDefault=false}} checked={{c.checked}} />{{c.name}} {{c.name} 在组件中,我有操作:,其中包
<input class="conditions" type="checkbox" value="{{c.id}}"
{{action "conditionChecked" r preventDefault=false}}
checked={{c.checked}} />{{c.name}}
{{c.name}
在组件中,我有操作:
,其中包含conditionChecked钩子。钩子有c
参数,这是我从模板传递的,模板也有选中的属性,该属性始终等于true
如何根据用户的选择(选中/未选中)访问复选框的实际状态?
编辑:我对Ember.js完全是个新手。如果您能提供一个示例链接,那就太好了。首先,我建议您使用余烬{{input type=“checkbox”checked=someControllerProperty}
。这将把选中值作为布尔值绑定到传递给输入
助手的选中
属性的任何控制器属性。不需要所有的动作。它是Ember,有双向绑定,所以将一个真值传递给这个助手将呈现一个复选框,并显示一个复选标记
如果你必须沿着你要走的路走下去(看起来你在与框架抗争),在你的conditionChecked
操作中,你可以使用方便的dandy view helper jquery选择器函数this.$()
并找到你的复选框。找到后,观察其checked属性,并设置一些值。我得说,你在这里重新发明轮子,因为这正是内置的input type=“checkbox”
helper所做的首先,我建议你使用余烬{{input type=“checkbox”checked=someControllerProperty}
。这将把选中值作为布尔值绑定到传递给输入
助手的选中
属性的任何控制器属性。不需要所有的动作。它是Ember,有双向绑定,所以将一个真值传递给这个助手将呈现一个复选框,并显示一个复选标记
如果你必须沿着你要走的路走下去(看起来你在与框架抗争),在你的conditionChecked
操作中,你可以使用方便的dandy view helper jquery选择器函数this.$()
并找到你的复选框。找到后,观察其checked属性,并设置一些值。我得说,你在这里重新发明轮子,因为这正是内置的input type=“checkbox”
helper所做的但是如果我需要收集所有复选框的值并组成一个数组(最终它是服务器端Postres中存储的JSON字段)如何将复选框绑定到单个属性?您可以有一个布尔数组和{{{{input type=“checkbox”checked=b}}{{{/each}
,但是如果需要收集所有复选框的值并组成一个数组(最终它是服务器端Postres中存储的JSON字段)如何将复选框绑定到单个属性?可以有一个布尔数组和{{{{{input type=“checkbox”checked=b}}{{{/each}