【问题标题】:Trigger event on clicking both on checkbox or row in kendo UI grid单击 kendo UI 网格中的复选框或行时触发事件
【发布时间】:2017-12-01 09:28:31
【问题描述】:

我的剑道网格看起来像:

我有change/dataBound 方法用于选中该框并突出显示选定的行:

change: function (e) {
    $('tr').find('[type=checkbox]').prop('checked', false).removeAttr('aria-selected');
    $('tr.k-state-selected').find('[type=checkbox]').prop('checked', true);                 
},
dataBound: function (e) {
    $(".checkbox").bind("click", function (e) {
        $(e.target).closest("tr").toggleClass("k-state-selected");
    });
},

我需要在选择一行时获取数据,我可以在change 方法中通过从选定行中提取dataItem 来完成。问题是,change 方法仅在我单击整行时触发,而不是在我单击复选框时触发。如何在单击复选框或行时触发事件?

【问题讨论】:

    标签: angularjs kendo-ui kendo-grid multiple-select


    【解决方案1】:

    如果您只需要在单击复选框时获取该行的数据项,您应该可以使用以下内容:

    dataBound: function (e) {
        $(".checkbox").bind("click", function (e) {
            $(e.target).closest("tr").toggleClass("k-state-selected");
            var myItem = grid.dataItem($(this).closest("tr"));
        });
    },
    
    // might need to update the reference to grid for your grid instance

    非常接近自定义命令http://demos.telerik.com/kendo-ui/grid/custom-command获取数据项的方法

    【讨论】:

      猜你喜欢
      • 2018-08-07
      • 1970-01-01
      • 1970-01-01
      • 2015-08-09
      • 2016-12-31
      • 1970-01-01
      • 1970-01-01
      • 2017-04-15
      • 1970-01-01
      相关资源
      最近更新 更多