0

我有如下输入文本:

<input type="text" style="width: 80%" data-bind="value: Note, event: { blur: $root.UpdateNote}" />

它包含可观察变量 Note 的值。并模糊它更新说明。我的问题是在更新之前检查 note 的先前值和 note 的当前值。

这是我的包含所有变量的构造函数

function Goal(data) {
var self = this;

self.GoalID = data.GoalID;
self.Note = ko.observable(data.Note);

}

在我的视图模型中,我已将 note 声明为可观察变量,如下所示:

self.Note = ko.observable();

在 knockoutjs 中,如何获取可观察变量的先前值?

4

1 回答 1

0

您可以订阅可Note观察的更改并指定“beforeChange”参数以获取旧值:

function Goal(data) {
    var self = this;

    self.GoalID = data.GoalID;
    self.Note = ko.observable(data.Note);

    self.Note.subscribe(function(oldValue) {
        console.log(oldValue);
    }, self, "beforeChange");

}

这是一个例子:http: //jsfiddle.net/vyshniakov/HACbc/

于 2012-11-09T10:53:50.213 回答