grid.dataItem(selectedRow)
这将返回选定的行,它是一个 kendo.data.ObservableObject。
该对象具有该网格的选定行的所有列。有没有办法迭代所有列并更新。 或者我必须这样做:
dataitem.set("Id", 1);
dataitem.set("name", Eric);
dataitem.set("age", 12);
最佳答案
据我了解,您正在尝试将一个 JavaScript 对象复制到网格项中,对吗?
假设您在 val
中有新值:
var val = {
Id : 1,
name: "Eric",
age: 12
};
并且您想将其复制到所选行中。
有几种方法可以做到这一点:
- 你刚刚做了什么。
- 迭代
val
的不同键并复制值。 - 使用 jQuery 扩展。
选项 2。
for (var key in val) {
if (val.hasOwnProperty(key)) {
dataitem.set(key, val[key]);
}
}
选项 3。
$.extend(item, val);
item.set("uid", kendo.guid());
第一条指令将 val
深度复制到 item
中。
第二条指令仅通过更改 UID 就使项目变脏
。
注意:您不需要使用 set
更新每个字段,更改一个字段就足够了,所有字段都会更新。
关于kendo-ui - kendo UI网格数据项设置方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18242682/