输入完成后值更新
Value update after finishing typing
是否可以在完成输入后更新值?
在 Knockout documentation 中提到 valueUpdate 有 3 个选项。完成输入后是否还有其他选项可以更新值(将焦点移出输入)?
我用 hasFocus 做到了,但是我的输入太多了,我必须为每个输入创建一个专用变量。
我终于成功了。
请找到我的 Plunker
我对我的第二个输入和结果(已计算)进行了自定义绑定。
在第二个输入的数据绑定中,我添加了这段代码:
event: { focus:function(){$root.outOfFocus(true)},blur: function(){$root.outOfFocus(false)} }
我在我的视图模型中创建了一个额外的可观察对象,并在计算中创建了一个 if 语句:
var ViewModel = function() {
var self = this;
self.outOfFocus = ko.observable(false); //new additional observable
self.value = ko.observable();
self.quantity = ko.observable();
self.totalPrice = ko.computed(function() {
if(self.value() !== undefined && self.quantity() != undefined && !self.outOfFocus()){// if statement
return self.value() * self.quantity();
}
});
};
是否可以在完成输入后更新值?
在 Knockout documentation 中提到 valueUpdate 有 3 个选项。完成输入后是否还有其他选项可以更新值(将焦点移出输入)?
我用 hasFocus 做到了,但是我的输入太多了,我必须为每个输入创建一个专用变量。
我终于成功了。 请找到我的 Plunker 我对我的第二个输入和结果(已计算)进行了自定义绑定。 在第二个输入的数据绑定中,我添加了这段代码:
event: { focus:function(){$root.outOfFocus(true)},blur: function(){$root.outOfFocus(false)} }
我在我的视图模型中创建了一个额外的可观察对象,并在计算中创建了一个 if 语句:
var ViewModel = function() {
var self = this;
self.outOfFocus = ko.observable(false); //new additional observable
self.value = ko.observable();
self.quantity = ko.observable();
self.totalPrice = ko.computed(function() {
if(self.value() !== undefined && self.quantity() != undefined && !self.outOfFocus()){// if statement
return self.value() * self.quantity();
}
});
};