javascript - Knockout js Table Edit 列获取 onkeyup/Onchange 最新值。[小提琴] (https://jsfiddle.net/chiks/975ncawv/521/)
问题描述
我有一个用于表的淘汰模型。在表 1 中的列始终是可编辑的。我希望获得此列的更改值,即当 onchange/onKeyup 事件发生时,新更改的值应该对我可用,即在警报中我应该收到最新更改的值。
下面只是一个示例代码片段。请找小提琴
<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);
});
解决方案
这比它需要的要复杂得多。
默认情况下,可观察对象在其值更新时触发更改事件。您无需在 HTML 中创建事件绑定来监听更改。保持这样:
<input data-bind="value: Menge "/>
要侦听此
Menge
observable 触发的更改事件,只需在它创建后立即订阅它(在 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); }); };
这是更新的小提琴。
推荐阅读
- node.js - 当我尝试加入 adonis 时出错:缺少表“book”的 FROM 子句条目
- git - 无法从 Mac 上的 Azure Devops 存储库中读取 Flutter 依赖项(适用于 PC)
- php - 使用 jquery 正确分配隐藏字段值
- python - 如何引用二维数组python中的特定元素
- javascript - 如何创建一个查找 fetch 请求的 if 语句?
- python - 如何在 django 登录时检查普通密码和散列密码
- database - 如何将数据库查询结果中的值存储到机器人框架中的变量中
- java - 将多个列映射到作为数组 JPA 一部分的对象的同一字段
- angular - 我试图通过主题 [ngx-monaco-editor] 在 onMonacoLoad 之后创建 NgxEditorModel
- javascript - 如何在不知道端口的情况下通过 node.js 连接到“In-Sight OPC Server”?