GrailsアプリケーションでKendoグリッドを使用していますが、すべての行で1つのボタンも表示され、そのボタンをクリックすると、一番上の行と同じ値で1つの新しい行が挿入される必要があります。
ありがとう
GrailsアプリケーションでKendoグリッドを使用していますが、すべての行で1つのボタンも表示され、そのボタンをクリックすると、一番上の行と同じ値で1つの新しい行が挿入される必要があります。
ありがとう
この問題は、カスタム テンプレートを使用して解決できます。例えば:
$("#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);
}
selectedItem から新しい ID でコピーを作成する createNewItem 関数を作成する必要があることに注意してください。新しい項目が挿入される位置は、グリッドで使用している並べ替えによって異なります。