Kendo Grid - 不允许某些记录进行编辑

时间:2014-12-09 09:56:02

标签: javascript jquery kendo-ui kendo-grid

我的Kendo网格中有以下命令按钮列。

如何禁用空“ItemValue”的行中的“编辑”按钮。

$("#list485").kendoGrid({
     dataSource: dataSource,
     columns: [
                        { command: [{ name: "edit" }], title: " ", width: "100px"},
                        {   field: "ItemValue", title: "Item Description" }
    ],
    editable: "popup" 
});

2 个答案:

答案 0 :(得分:1)

你可以通过dataBound函数隐藏编辑按钮,如下所示

dataBound: function (e) {
                     var grid = $("#list485").data("kendoGrid");
                     var gridData = grid.dataSource.view();
                     for (var i = 0; i < gridData.length; i++) {
                         var currentUid = gridData[i].uid;
                         if (gridData[i].ItemValue == "") {
                             var currenRow = grid.table.find("tr[data-uid='" + currentUid + "']");
                             var editButton = $(currenRow).find(".k-grid-edit");
                             editButton.hide();
                         }
                     }
                 } 

我希望这会对你有所帮助

答案 1 :(得分:0)

不确定这是否可以满足您的需求,但它适用于内联编辑。

 $("#list485").kendoGrid({
 dataSource: dataSource,
 columns: [
                    { command: [{ name: "edit" }], title: "&nbsp;", width: "100px"},
                    {   field: "ItemValue", title: "Item Description" }
],
editable: "popup",
edit: function(e) {
          if(e.model.ItemValue == 100)//your condition
             {
              $("#grid").data("kendoGrid").refresh();
             }
       }
});      

无论如何,这是我能够找到的东西。 必须有一些更好的解决方案。