Kendo Grid - PopUp编辑:区分'编辑'和'添加'

时间:2015-07-30 13:50:16

标签: javascript c# asp.net-mvc kendo-ui kendo-grid

我有一个Kendo网格,它有自定义编辑按钮和一个允许你添加新工具栏的工具栏。

编辑/新功能仅使用一个模板。

我怎么知道我是否在编辑'模式vs'新'模式。

我的代码(Kendo Grid):

 @(Html.Kendo().Grid(Model.OtherBreeds)
              .Name("grdOtherBreeds")
              .HtmlAttributes(new { @class = "grid" })
              .Columns(columns =>
              {
                  columns.Bound(c => c.OrganizationName);
                  columns.Bound(c => c.Prefix);
                  columns.Bound(c => c.Name);
                  columns.Bound(c => c.MemberId);
                  columns.Template(e => { })
                      .ClientTemplate(KendoTemplates.ActionColumn.WithEdit().WithDelete().Get())
                      .Visible(true)
                      .Title(Resources.Actions)
                      .Width(Constants.GridCommandColumnWidth);
              })
              .DataSource(dataSource => dataSource
                  .Ajax()
                  .PageSize(50) //? standard page size when grid is only UI element on screen?
                  .Model(model =>
                  {
                      model.Id(p => p.Id);
                      model.Field(p => p.OrganizationName);
                      model.Field(p => p.Prefix);
                      model.Field(p => p.Name);
                      model.Field(p => p.MemberId);
                  })
              )
              .Events(e => e.DataBound(KendoEventHandlers.DataBound.WithNoData(Resources.NoOtherBreedsForCustomer).Get()))
              .Sortable()
              .Pageable()
              .Filterable()
              .Editable(editable => editable.Mode(GridEditMode.PopUp).TemplateName("OtherBreedTemplate").Window(w => w.Width(500).Title("Add Other Breed")))
              .ToolBar(toolbar =>
              {
                  toolbar.Template(KendoTemplates.Toolbar.WithAdd("Add Other Breed").Get());
              })
              )  

1 个答案:

答案 0 :(得分:0)

您可以为编辑

添加事件处理程序

.Events(e => e.Edit("onEdit"))

这应该为您提供模型和窗口所需的一切

<script>   
    function onEdit(e) {
        if (e.model.isNew()) {
            //the e.container is the PopUp window
            e.container.find(".class").text("New");
        }
    }
</script>