主干-复选框保持选中状态
Backbone - Checkbox stays checked?
我试图将一个复选框挂接到我的视图,但只要我勾选它,它就会保持选中状态,即使我再次单击它?
以下是部分视图:
views.PaginatedView = Backbone.View.extend({
events: {
'click input.completedEnquiries': 'filterCompletedEnquiries'
},
filterCompletedEnquiries: function (e) {
return e.currentTarget.checked;
}
});
模板如下:
<label>Show Completed: <input type="checkbox" class="completedEnquiries" /></label>
我不知道我在这里做错了什么?
编辑
以下是问题的细节:http://jsfiddle.net/9cvVv/167/
问题是从事件处理程序返回e.currentTarget.checked
。从该处理程序返回true
或false
将选中或取消选中的框
filterCompletedEnquiries: function(e) {
//return e.currentTarget.checked;
},
注释掉那个return语句,它运行良好。您仍然可以获取信息,但不要从该方法返回任何信息。
filterCompletedEnquiries: function(e) {
var isChecked = e.currentTarget.checked;
// do stuff here, based on it being checked or not
},
编辑
下面是一个例子,基于评论中的对话:
views.PaginatedView = Backbone.View.extend({
events: {
'click input.completedEnquiries': 'completedEnquiriesClicked'
},
// this is explicitly an event handler, and that's all it should be used for
completedEnquiriesClicked: function(e){
this.showCompletedEnquiries = e.currentTarget.checked;
},
doSomething Else: function (e) {
// now that we need to know, we can just check that attribute
if (this.showCompletedEnquiries){
// do something here
}
}
});
这只是你可以选择的众多选项之一,让它以你想要的方式工作。
相关文章:
- 角度复选框不会保持选中状态
- 复选框保持React JS中各组件的状态
- jQuery复选框被锁定为选中状态
- 主干-复选框保持选中状态
- 基于复选框状态的条件数学
- 导航到另一个页面后,复选框状态会更改
- 处于特定状态的复选框
- 如何创建至少 1 个框处于活动状态的复选框列表
- 如何根据各种复选框状态执行操作
- 使用 javascript 获取复选框的状态
- 按钮未启用,如果复选框处于打开状态
- 如何保存动态创建的复选框的更改状态
- 检查复选框状态-Javascript
- 创建一个复选框按钮的散列,这些按钮在单击时在Twitter Bootstrap Button组中处于活动状态
- 多个复选框中的一个应始终保持未选中状态
- Twitter引导程序:删除/切换类似复选框的按钮组的活动状态
- JavaScript-使用sessionStorage保存文档之间共享的复选框状态
- 带有角度指令的三状态复选框
- ReactJS自定义三状态复选框将不显示复选标记
- 表示单页应用程序的用户配置状态(复选框、选择列表)的标准做法