在Android上没有工作的复选框中的Knockout数据绑定(4.2)

时间:2014-01-14 23:30:10

标签: javascript html html5 knockout.js

使用Knockout JS在我的html控件中存在数据绑定问题:

我有以下输入复选框

<input type="checkbox" id="chbText" data-mini="true" data-bind="checked: chkAddLabel"  />

我使用以下代码绑定chkAddLabel属性来显示/隐藏一些div

 this.IsShowDiv = ko.computed(function () {
     return this.chkAddLabel();
 }

最后是div

<div data-bind="visible: IsShowDiv"></div> 

这个相同的代码在Windows操作系统浏览器(Chrome,IE,Firefox)上运行良好,但不能在Nexus 7和Nexus 5上运行。

1 个答案:

答案 0 :(得分:0)

您需要将this变量复制到本地变量。假设将其视为self。我们需要这样做,因为每个函数都有默认变量this 因为父this覆盖了新this

var self = this;
self.IsShowDiv = ko.computed(function () {
 return self.chkAddLabel();
}