Knockout js Table 编辑列获取 onkeyup/Onchange 最新值。 [Fiddle] (https://jsfiddle.net/chiks/975ncawv/521/)
Knockout js Table Edit column get onkeyup/ Onchange Latest Value. [Fiddle] (https://jsfiddle.net/chiks/975ncawv/521/)
我有一个 Table 的淘汰赛模型。在 Table 中,有 1 列始终是可编辑的。我希望获得此列的更改值,即当 onchange/onKeyup 事件发生时,新更改的值应该对我有用,即在警报中我应该收到最新的更改值。
下面只是一个示例代码片段。请找到 Fiddle
<td>
<input data-bind="event: {change:$parent.value_changed},value: Menge "/>
</td>
self.value_changed = ko.observable(self.items());
refVM.value_changed.subscribe(function (newValue) {
alert(newValue);
});
这比它需要的要复杂得多。
默认情况下,Observables 会在其值更新时触发更改事件。您不需要在 HTML 中创建事件绑定来监听更改。保持这样:
<input data-bind="value: Menge "/>
要监听此 Menge
可观察对象触发的更改事件,只需在创建后立即订阅它(在 RowModel 构造函数中)。
var RowModel = function(bild,artikelnummer, bezeichnung,kategorie,preis,menge,preisgesamt,removePeople, werbemittelId) {
this.Bild = ko.observable(bild);
this.Artikelnummer = ko.observable(artikelnummer);
...
this.Menge = ko.observable(menge);
...
this.Menge.subscribe(function(newValue){
alert(newValue);
});
};
这是更新后的 fiddle。
我有一个 Table 的淘汰赛模型。在 Table 中,有 1 列始终是可编辑的。我希望获得此列的更改值,即当 onchange/onKeyup 事件发生时,新更改的值应该对我有用,即在警报中我应该收到最新的更改值。
下面只是一个示例代码片段。请找到 Fiddle
<td>
<input data-bind="event: {change:$parent.value_changed},value: Menge "/>
</td>
self.value_changed = ko.observable(self.items());
refVM.value_changed.subscribe(function (newValue) {
alert(newValue);
});
这比它需要的要复杂得多。
默认情况下,Observables 会在其值更新时触发更改事件。您不需要在 HTML 中创建事件绑定来监听更改。保持这样:
<input data-bind="value: Menge "/>
要监听此
Menge
可观察对象触发的更改事件,只需在创建后立即订阅它(在 RowModel 构造函数中)。var RowModel = function(bild,artikelnummer, bezeichnung,kategorie,preis,menge,preisgesamt,removePeople, werbemittelId) { this.Bild = ko.observable(bild); this.Artikelnummer = ko.observable(artikelnummer); ... this.Menge = ko.observable(menge); ... this.Menge.subscribe(function(newValue){ alert(newValue); }); };
这是更新后的 fiddle。