Kendo UI Grid .Net MVC - 仅在Creation中可编辑的列

时间:2017-07-18 12:01:28

标签: asp.net-mvc kendo-grid kendo-asp.net-mvc

我一直在搜索如何在Kendo Grid ASP.Net MVC(Razor)中创建一个列只有在我们创建时才可编辑,而在更新时不可编辑。

有什么特别的东西可以帮助我完成这项任务吗?

1 个答案:

答案 0 :(得分:1)

您可以将自定义函数绑定到onEdit事件,并使该列只读:

@(Html.Kendo().Grid<DemoType>()
      .Name("grid")
      .Columns(columns =>
      {
         /*...*/
      })
      .Events(events => events
          .Edit("onEdit")
      )
  )

使用Javascript:

function onEdit(e) {
    if (e.model.isNew() == false) {
        //$('[name="YourcolumnName"]').attr("readonly", true);
        //replace input with span
        //taken from https://stackoverflow.com/questions/3142990/jquery-replace-inputs-with-spans
        $('[name="YourcolumnName"]').each(function() {
          $("<span />", { text: this.value}).insertAfter(this);
          $(this).hide();
       });
    }
}