Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Checkbox KendoUI网格复选框单击事件_Checkbox_Kendo Ui_Kendo Grid - Fatal编程技术网

Checkbox KendoUI网格复选框单击事件

Checkbox KendoUI网格复选框单击事件,checkbox,kendo-ui,kendo-grid,Checkbox,Kendo Ui,Kendo Grid,我有数据要显示在KendoUI网格中。有一些布尔数据,我希望它显示为复选框。此外,当用户单击复选框时,我需要做一些事情,因此我需要为每行数据使用onclick事件。在KendoUI网格中如何执行此操作?如何为每个复选框指定不同的名称并在单击事件时激发?我的代码: @(Html.Kendo().Grid((IList<M.TS.DomainModel.C>)ViewData["peoplefind"]) .Name("Grid") .Columns(columns =>

我有数据要显示在KendoUI网格中。有一些布尔数据,我希望它显示为复选框。此外,当用户单击复选框时,我需要做一些事情,因此我需要为每行数据使用onclick事件。在KendoUI网格中如何执行此操作?如何为每个复选框指定不同的名称并在单击事件时激发?我的代码:

 @(Html.Kendo().Grid((IList<M.TS.DomainModel.C>)ViewData["peoplefind"])
  .Name("Grid")
  .Columns(columns =>
  {
      columns.Bound(p => p.FirstName);
      columns.Bound(p => p.LastName);
      columns.Bound(p => p.User).Title("Email");
      columns.Bound(p => p.City);
      columns.Bound(p => p.TimeStamp).Title("Testdate").Format("{0:MM/dd/yyyy}");
      columns.Command(command => command.Custom("Info").Click("showDetails")).Title("Info");
      columns.Bound(p => p.CheckOK).ClientTemplate(
"<input type='checkbox' value= '#= CheckOK #' " +
    "# if (CheckOK) { #" +
        "checked='checked'" +
    "# } #" + 
"/>"
    );

  })
 .Sortable()
  .Scrollable(scr => scr.Height(300))
  .Groupable()
  .Selectable()
  .Pageable()
   .DataSource(dataSource => dataSource
    .Ajax()
    .PageSize(20)
    .ServerOperation(false))
    .Resizable(resize => resize.Columns(true))
@(Html.Kendo().Grid((IList)ViewData[“peoplefind”])
.名称(“网格”)
.列(列=>
{
columns.Bound(p=>p.FirstName);
columns.Bound(p=>p.LastName);
columns.Bound(p=>p.User).Title(“Email”);
columns.Bound(p=>p.City);
columns.Bound(p=>p.TimeStamp).Title(“Testdate”).Format(“{0:MM/dd/yyyy}”);
columns.Command(Command=>Command.Custom(“信息”)。单击(“showDetails”))。标题(“信息”);
columns.Bound(p=>p.CheckOK).ClientTemplate(
""
);
})
.Sortable()
.可滚动(scr=>scr.高度(300))
.Groupable()
.可选()
.Pageable()
.DataSource(DataSource=>DataSource
.Ajax()
.页面大小(20)
.ServerOperation(错误))
.resize可调整大小(resize=>resize.Columns(true))
)

好吧,我想出来了。我在复选框的模板中添加了class='c-ok',并添加了以下代码以获取click事件

  $('.c-ok').click(function (e) {
        if ($(this).is(':checked')) {
            alert('checked');
            cokclick();
        } else {
            alert('not checked');
        }

    });

我已经想出了如何获得点击事件。我像这样在模板中添加了onclick。columns.Bound(p=>p.CheckOK).ClientTemplate(“”)现在,如何获取javascript函数中复选框的值?函数cokclick(){var grid=$(“#grid”).data(“kendoGrid”);var row=grid.select();var dataItem=grid.dataItem(row);var cval=$(dataItem.col(9))。是(“:checked”);//如何获取复选框列值??var pid=dataItem.PersonId;警报(pid+“;”+cval);//cval未定义