【问题标题】:Customized checkboxes are not clickable in kendo grid自定义复选框在剑道网格中不可点击
【发布时间】:2020-06-07 03:14:39
【问题描述】:

我有带有复选框选择列的剑道网格,我自定义了这些复选框,但现在复选框不可点击,无法取消选中或选中

我该如何解决这个问题?

这是我的代码

@( Html.Kendo().Grid<MockUpForeNet.Controllers.CardDetailController.Days>()
     .Name("timegrid")
     .DataSource(d => d.Ajax().Read("TimeGridBinding", "CardDetail").Model(keys =>
     {
         keys.Id(k => k.DayId);
         keys.Field(c => c.DayName).Editable(false);
         keys.Field(c => c.DayId).Editable(false);
     }).PageSize(7))
               .Columns(c =>
               {
                   c.Bound(p => p.DayId).Width(100).Title(" ").ClientTemplate("#= chk2(data) #").Sortable(false);
                   c.Bound(e => e.DayName).Width("auto").Title("Day");
               })
       .Editable(editing => editing.Mode(Kendo.Mvc.UI.GridEditMode.InCell))
       .Sortable()
       .ColumnMenu()
)

这里是我的复选框模板

function chk2(data) {
    return '<input id="masterCheck' + data.DayId + '" class="k-checkbox" type="checkbox" checked="checked" /><label for="masterCheck" class="k-checkbox-label"></label>';
}

【问题讨论】:

标签: javascript html checkbox kendo-ui kendo-grid


【解决方案1】:

您的模板中有一个错误:label for="masterCheck" 缺少 data.DayId

还要注意复选框有changed in version 2020.1.114,不再需要空标签。请参阅 https://demos.telerik.com/kendo-ui/checkbox/index 上的示例。出于可访问性原因,请记住提供aria-label

【讨论】:

【解决方案2】:

DayId 应该可以在DataSource 中编辑

keys.Field(c => c.DayId).Editable(true);

【讨论】:

  • 否,因为该值是整数,并且当其可编辑为 true 并单击它以显示文本框时用复选框掩盖
猜你喜欢
  • 2014-10-01
  • 1970-01-01
  • 2014-10-21
  • 1970-01-01
  • 1970-01-01
  • 2017-06-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多