更改单击编辑以双击网格

时间:2013-01-10 08:57:03

标签: kendo-ui

我想将kendo ui网格上的单击编辑功能替换为双击。

我想要保留的设置是:selectable: "multiple, row", editable: true

我发现解决方案是设置editable: false并添加$('#grid').delegate('tbody>tr>td','dblclick', function (e){}

不幸的是,这会带来其他问题,使我的整个编辑过程变得困难。例如,kendo不能再轻松跟踪更改,也不会将该字段标记为使用该红色箭头进行更改。

有没有办法将默认的kendo单击功能更改为双击?

所以请求的行为是:

  1. 单击选择行/单元格
  2. 双击可将单元格置于编辑模式。

2 个答案:

答案 0 :(得分:6)

这不是很好很好但可能会做到这一点:

var myGrid = $('#grid').data("kendoGrid");
myGrid.element.on('click', 'tbody>tr>td:not(.k-edit-cell)', function (e) {
    myGrid.closeCell();
});
myGrid.element.on("dblclick", "tbody>tr>td:not(.k-edit-cell)", "dblclick", function (e) {
    myGrid.editCell($(this));
});

第一个on退出单元格版本进行单击,不会将其他绑定更改为行选择,第二个进入单元格的编辑模式。

为什么我说很好?因为除了必须关闭版本之外,我更愿意unbind之前click版本的事件(仅限){/ p>

答案 1 :(得分:0)

我使用这段代码,它很难看,但有效:

<script type="text/javascript">
    $(document).ready(function () {
        $(document).on("dblclick", "#MyGrid td[role='gridcell']", function (e) {   
        // do something
        });
    });
</script>