gpt4 book ai didi

kendo-ui - Kendo UI 通过控件复制数据

转载 作者:行者123 更新时间:2023-12-02 05:16:24 26 4
gpt4 key购买 nike

是否可以采用 2 个独立的 Kendo UI 网格并能够通过 UI 控件(如向前和向后箭头)来回传递数据?

该模式将采用左侧的主列表,选择项目并在右侧有一个优化的列表。

最佳答案

如果可能并且不难做到但你必须自己做所以你需要:

  1. 关于 KendoUI GridDataSource 以及它们公开的事件的一些知识。
  2. 一些有关 JavaScript + jQuery 的知识,可帮助您进行验证并避免错误。

让我们有以下网格定义:

var grid1 = $("#grid1").kendoGrid({
dataSource: ds1,
selectable: "multiple",
navigatable: true,
pageable: false,
columns: [
{ field: "name", title: "Name" },
{ field: "lastName", title: "Last Name" }
]
}).data("kendoGrid");

var grid2 = $("#grid2").kendoGrid({
dataSource: ds2,
selectable: "multiple",
navigatable: true,
pageable: false,
columns: [
{ field: "name", title: "Name" },
{ field: "lastName", title: "Last Name" }
]
}).data("kendoGrid");

我们定义了两个按钮:

  1. 用于将选定的行从 grid1 复制到 grid2
  2. 用于将选定的行从 grid2 复制到 grid1

按钮定义为:

<div><a href="#" id="copySelectedToGrid2" class="k-button">&gt;</a></div>
<div><a href="#" id="copySelectedToGrid1" class="k-button">&lt;</a></div>

以及用于管理它的 JavaScript:

$("#copySelectedToGrid2").on("click", function (idx, elem) {
moveTo(grid1, grid2);
});

$("#copySelectedToGrid1").on("click", function (idx, elem) {
moveTo(grid2, grid1);
});

最后 moveTo 会是这样的:

function moveTo(from, to) {
var selected = from.select();
if (selected.length > 0) {
var items = [];
$.each(selected, function (idx, elem) {
items.push(from.dataItem(elem));
});
var fromDS = from.dataSource;
var toDS = to.dataSource;
$.each(items, function (idx, elem) {
toDS.add({ name: elem.name, lastName: elem.lastName });
fromDS.remove(elem);
});
toDS.sync();
fromDS.sync();
}
}

这个例子here

关于kendo-ui - Kendo UI 通过控件复制数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14565768/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com