KendoUI网格复选框列

时间:2016-08-24 13:22:55

标签: asp.net razor kendo-ui telerik kendo-grid

目前我有这个代码用于显示KendoUI网格:

@(Html.Kendo().Grid<CleverFit.Models.MyHistorie>()
      .Name("grid")
      .DataSource(dataSource => dataSource // Configure the grid data source
          .Ajax() // Specify that ajax binding is used
          .Read(read => read.Action("Products_Read", "Action")) // Set the action method which will return the data in JSON format
       )
      .Columns(columns =>
      {
        columns.Bound(product => product.Datum).Format("{0:dd.MM.yyyy}");
        columns.Bound(product => product.Aktion);
        columns.Bound(product => product.Ergebnis);
        columns.Bound(product => product.Wiedervorlage).Format("{0:dd.MM.yyyy H:mm}");
        columns.Bound(product => product.Bemerkung);
        columns.Bound(product => product.Erledigt);
      })
      .Pageable() // Enable paging
      .Sortable() // Enable sorting
)

我已经尝试了这个:

columns.Bound(product => product.Erledigt).ClientTemplate(
    "<input type='checkbox' value='#= ProductID #' " +
        "# if (Enabled) { #" +
            "checked='checked'" +
        "# } #" +
    "/>"
);

但是如果我添加它,网格中就没有显示数据......

最后一列product.Erledigt的值显示为true或false。是否可以将它们显示为复选框?

我正在使用Telerik KendoUI并通过AJAX加载模板的内容。

1 个答案:

答案 0 :(得分:1)

您可以查看以下常见问题解答页面:

http://docs.telerik.com/kendo-ui/aspnet-mvc/helpers/grid/faq#how-to-display-checkboxes-in-ajax-bound-grids

此外,您可以将复选框设置为只读或禁用,以防止用户对其进行编辑,并希望保留更改。

<强>更新

您尝试过的代码包含两个数据字段值,显然在您的网格中不存在:ProductIDEnabled。很可能您在浏览器控制台中收到JavaScript错误。将Enabled替换为Erledigt,如果您不需要,请移除value='#= ProductID #'