preventDefault()在Kendo网格的自定义单击处理程序中不起作用

Cur*_*ero 6 javascript jquery kendo-ui kendo-grid

我为Kendo网格的"添加新记录"按钮添加了自定义点击处理程序,但JavaScript的preventDefault()函数似乎不起作用.

$('.k-header').on('click', '.k-grid-add', function(e) {
    e.preventDefault();
    e.stopPropagation();
    // do something else
});
Run Code Online (Sandbox Code Playgroud)

我想"添加新记录"按钮除了在网格中添加新行之外还有其他功能.

完整的代码示例:JSFIDDLE

Kot*_*nga 1

查看更新的小提琴

http://jsfiddle.net/qoxvaayn/5/

KendoUi 还像 jquery 一样附加了单击事件侦听器,因此要删除现有的单击事件处理程序,我们应该off像下面一样使用,然后附加新的单击事件。

e.preventDefault();e.stopPropagation(); 将停止默认事件处理程序行为,但不会停止附加的侦听器。

$('.k-header').off('click').on('click', '.k-grid-add', function(e) {
    //handler business logic here
});
Run Code Online (Sandbox Code Playgroud)