Ember.js复选框绑定初始值设置不正确
Ember.js checkbox binding initial value set incorrectly
不知怎么的,我的Ember应用程序中的复选框最初总是被选中的。
...
{{#each model.fields}}
...
{{input type="checkbox" checked=isOptional}}
字段数组是我的模型中的一个属性。字段数组中的每个对象都有一个名为isOptional的属性,它可以是"true"或"false"。
出于某种原因,无论isOptional的值是多少,最初都会选中该复选框。
如果我手动选中复选框,isOptional标志实际上会被更改。因此,除了检测初始值之外,绑定还起作用。
非常感谢您的帮助,谢谢!
编辑:正如评论中所讨论的,问题是因为我的模型是由Ember.$.getJSON()
返回的,它在引号中有"false",并被解释为true值,导致复选框被选中。我通过重写布尔值来解决这个问题:
model.fields.forEach(function(field, i) {
Ember.set(field, 'isOptional', (field.isOptional == 'true'));
});
一个可以摆弄的jsbin示例http://emberjs.jsbin.com/kukokiti/1/
如果您能提供自己的jsbin,我们可以提供更多帮助。
编辑:您可以在字符串值中看到"false"的效果。
最简单的方法可能是在您正在使用的模型上定义一个计算特性。
相关文章:
- 变量dos'设置不正确
- Ember.js{{render}}助手模型设置不正确
- 使用 Javascript/JQuery 使用 Ajax 加载 Google Maps API,回调设置不正确
- 关联数组设置不正确
- H1 标题设置不正确
- 标头活动类设置不正确
- Mediaelement.js setCurrentTime在Firefox和使用flash时设置的时间不正确
- Phantomjs 抛出“此页面使用框架,但您的浏览器不支持它们”错误,即使在设置了正确的用户代理后也是如此
- 为什么Raphael.js的动画设置到不正确的坐标
- D3嵌套格式设置日期不正确
- 在if/else if的函数作用域中设置的值不正确
- 使用Javascript设置时,表单操作不正确
- Ember.js复选框绑定初始值设置不正确
- 在Javascript中设置CSS 3过渡和转换在Chrome中工作,但在IE 10, FF中不正确
- 元素的同位素高度设置不正确
- HTML5 & # 39;时间# 39;标签设置值不正确
- 为什么mime类型通常设置不正确?
- 下拉菜单中选择的值设置不正确
- Object3D.applyMatrix()设置不正确的比例
- Cookie设置不正确