【发布时间】:2014-06-16 15:31:27
【问题描述】:
我有一个淘汰赛应用程序,其中我有一个功能,可以根据所选选项显示/隐藏页面上的元素。已选择用于激活特定切换的按钮将具有“活动”类,以便它从其他按钮中“脱颖而出”并且清晰可见,这是所选选项。我的问题是我创建了一个剔除函数来切换活动类,但它触发了 所有 按钮而不是选定按钮的活动状态,我不知道为什么?
var viewModel = function(){
var self = this;
self.isActive = ko.observable(false);
self.toggleActive = function(data, event){
self.isActive(!self.isActive()); //toggle the isActive value between true/false
}
}
<button data-bind="click: toggleActive, css : {'activeStyle' : isActive}">Toggle Active</button>
<button data-bind="click: toggleActive, css : {'activeStyle' : isActive}">Toggle Active</button>
<button data-bind="click: toggleActive, css : {'activeStyle' : isActive}">Toggle Active</button>
【问题讨论】:
-
既然您已经标记了 jQuery,您可能需要考虑使用 jQuery 的 toggleClass 函数:api.jquery.com/toggleClass
-
那是个错误;迅速修复。最好不要将敲除函数与 jquery 函数混合使用
标签: javascript knockout.js knockout-2.0