我正在设置如下方案:
1)用户在第一个网格上显示现有结果
2)用户可以选择多个结果,然后点击'编辑'按钮将从第一个网格中提取所选项目
3)第二个网格将填充用户从第一个网格中选择的行,并允许他们对内容进行编辑
4)按保存将更新结果并显示更新行的第一个网格
到目前为止,使用各种论坛帖子(here和here)的滴水和单调,我已经设法完成了前两个步骤。
$("#editButton").kendoButton({
click: function () {
// extract selected results from the grid and send along with transition
var gridResults = $("#resultGrid").data("kendoGrid"); // sourceGrid
var gridConfig = $("#resultConfigGrid").data("kendoGrid"); // destinationGrid
gridResults.select().each(function () {
var dataItem = gridResults.dataItem($(this));
gridConfig.dataSource.add(dataItem);
});
gridConfig.refresh();
transitionToConfigGrid();
}
});
dataItem返回我期望看到的关于所选项目的内容 - 附加dataItem.png。我可以看到gridConfig填充但空行(gridBlankRows.png)。
gridConfig
设置:
$(document).ready(function () {
// build the custom column schema based on the number of lots - this can vary
var columnSchema = [];
columnSchema.push({ title: 'Date Time'});
for(var i = 0; i < $("#maxNumLots").data("value"); ++i)
{
columnSchema.push({
title: 'Lot ' + i,
columns: [{
title: 'Count'
}, {
title: 'Mean'
}, {
title: 'SD'
}]
});
}
columnSchema.push({ title: 'Comment'});
columnSchema.push({ title: 'Review Comment' });
// build the datasource with CU operations
var configDataSource = new kendo.data.DataSource({
transport: {
create: function(options) {},
update: function(options) {}
}
});
$("#resultConfigGrid").kendoGrid({
columns: columnSchema,
editable: true
});
});
我已经用完了有用的参考资料来确定我做错了什么/这里有什么特别的。任何帮助/指导将不胜感激。
此外,我还需要“添加新内容”功能。结果。如果可能的话,我想使用相同的网格(空白datasource
)来完成此任务。然后,用户可以向第二个网格添加行,并使用与更新功能类似的功能进行保存。因此,如果有任何方法可以将其纳入响应,我将不胜感激。
答案 0 :(得分:0)
以下示例......
...是...
的修改版本http://docs.telerik.com/kendo-ui/framework/datasource/crud#examples
几点说明:
gridConfig.dataSource.add(dataItem).toJSON();
)或Kendo UI Model对象(gridConfig.dataSource.add(dataItem);
),这一点很重要。在第一种情况下,您需要将更新后的值从Grid2传回Grid1,否则会自动发生; refresh()
第二个网格