在kendo网格中保留重复的行

问题描述 投票:0回答:1

我有一个要求,我需要保持可以重复的行。要求是我将值从一个网格拖动到另一个网格。但当我删除一行时,它将删除所有相同的行

我正在使用kendo remove功能,例如

rightGrid.dataSource.remove(sortElement);

如果我拖动一个重复的行,它将删除所有相同的行,而不是只删除一行。

是否有任何功能只能删除该特定行。

我也用过removeRow但没有运气。

jquery asp.net-mvc kendo-ui kendo-grid kendo-asp.net-mvc
1个回答
0
投票

你可以使用Grid的removeRow():

$("#grid").on("click", "button.remove", function() {
    var $tr = $(this).closest("tr"),
        grid = $("#grid").data("kendoGrid");

    grid.removeRow($tr);
});

或者您可以使用DataSource的remove():

$("#grid").on("click", "button.remove", function() {
    var $tr = $(this).closest("tr"),
        grid = $("#grid").data("kendoGrid"),
        dataItem = grid.dataItem($tr);

    grid.dataSource.remove(dataItem);
});

您还可以从telerik查看demo

要删除重复项,可以使用以下内容

function onSave(e){
var currentProductName = e.model.ProductName;
var currentProductID = e.model.ProductID;
var data = this.dataSource.data();
for(item in data){
if(data[item].ProductName == currentProductName &&
data[item].ProductID != currentProductID){
e.preventDefault();
alert("Duplicates found");
// here you can delete your Duplicates
// you had to pass ur UID to 'getByUid' function
// var dataRow = $('#grid').data("kendoGrid").dataSource.getByUid(uid);
// $('#grid').data("kendoGrid").dataSource.remove(dataRow);
}

}
}
© www.soinside.com 2019 - 2024. All rights reserved.