【发布时间】:2016-04-21 04:32:27
【问题描述】:
我将尽我所能解释这一点。我在该对象中有一个名为 BaseForm 的对象,我有函数和淘汰赛 observables。我有一个名为Initialize 的函数,其中有一个对象,里面充满了ko observables。其中一个 observable 被称为 FormVisible 并被初始化为 true (FormVisible: ko.observable(true))。我还有一个名为OnClickRow 的函数。在此函数中,它将FormVisible 从真更改为假。我多次实例化BaseForm。当我调用OnClickRow 时,它只会影响最后一个实例化的对象。为什么会这样?我该如何解决?
这是我的代码:
function BaseForm() {
var that = this;
BaseForm.prototype.Initialize = function(model) {
this.model = model;
this.FormVM = {
FormVisible: ko.observable(true)
}
}
BaseForm.prototype.OnClickRow = function() {
that.FormVM.FormVisible(false);
}
}
this.base1 = new BaseForm();
this.base1.Initialize("new");
this.base2 = new BaseForm();
this.base2.Initialize("old");
this.base3 = new BaseForm();
this.base3.Initialize("other");
this.base1.OnClickRow();
这里是jsfiddle。
【问题讨论】:
-
您可能会发现这很有帮助jsfiddle.net/GSvnh/5147
标签: javascript jquery knockout.js