New to Kendo UI for jQuery? Start a free 30-day trial

Fired when the user tries to edit or create a data item, before the editor is created. Can be used to preventing editing according to any custom logic.

The event handler function context (available via the this keyword) will be set to the widget instance.

Event Data

e.model kendo.data.Model

The data item which is going to be edited. Use its isNew method to check if the data item is new (created) or not (edited).

e.sender kendo.ui.Grid

The widget instance which fired the event.

<div id="grid"></div>
<script>
$("#grid").kendoGrid({
  columns: [
    { field: "id" },
    { field: "name" },
    { field: "age" },
    { command: "edit" }
  ],
  dataSource: {
    data: [
      { id: 1, name: "Jane Doe", age: 30 },
      { id: 2, name: "John Doe", age: 33 }
    ],
    schema: {
      model: {
        id: "id",
        fields: {
          "id": { type: "number" }
        }
      }
    }
  },
  editable: "popup",
  toolbar:["create"],
  beforeEdit: function(e) {
    if (!e.model.isNew()) {
      e.preventDefault();
    }
  }
});
</script>
<div id="grid"></div>
<script>
  function grid_beforeEdit(e) {
      if (!e.model.isNew()) {
        e.preventDefault();
      }
  }
  $("#grid").kendoGrid({
    columns: [
      { field: "id" },
      { field: "name" },
      { field: "age" },
      { command: "edit" }
    ],
    dataSource: {
      data: [
        { id: 1, name: "Jane Doe", age: 30 },
        { id: 2, name: "John Doe", age: 33 }
      ],
      schema: {
        model: {
          id: "id",
          fields: {
            "id": { type: "number" }
          }
        }
      }
    },
    editable: "popup",
    toolbar:["create"],
    beforeEdit: function(e) {
      if (!e.model.isNew()) {
        e.preventDefault();
      }
    }
  });

  var grid = $("#grid").data("kendoGrid");
  grid.bind("beforeEdit", grid_beforeEdit);
</script>
Not finding the help you need?
Contact Support