我在我的 grails 应用程序中使用 Kendo 网格,我的要求是每一行都应该显示一个按钮,单击该按钮时,插入一个新行,其值与顶行相同。请任何人帮忙。
谢谢
这个问题可以使用自定义模板来解决。例如:
$("#myGrid").kendoGrid({
dataSource: {
schema: {
model: {
id: "id"
}
}
},
columns: [
{field: 'some_field', title: 'some title'},
{field: '', title: '', template: '<a href="\\#" onclick="duplicateRow(#=id#); rertun false;">duplicate row</a>'}
]
});
请注意,此示例假定网格中的每个对象都有一个名为“id”的唯一字段。
一个示例 duplicateRow 方法:
function duplicateRow(id) {
var selectedItem = $("#myGrid").data("kendoGrid").dataSource.get(id);
var newItem = createNewItem(selectedItem);
$("#myGrid").data("kendoGrid").dataSource.add(newItem);
}
请注意,您必须编写 createNewItem 函数,该函数应该使用新 id 从 selectedItem 创建副本。插入新项目的位置取决于您在网格中使用的排序。