防止之前选择行事件,当用户双击 jqgrid 中的任何行时



我在jqgrid中使用单元格编辑,为此,我使用了许多不同的jqgrid事件,如下所述...1) beforeSelectRow, 2)beforeEditCell, 3)afterEditCell, 4)onCellSelect, 5)ondblClickRow, etc...

现在,当我双击任何一行时,首先执行 beforeselectRow 代码.. 我想防止...但是怎么做呢?

一些示例代码如下:-

ondblClickRow: function(id,irow,icol,e)
{
  ........
},
beforeSelectRow : function(rowid, e) 
{   
    if(rowid==lastSelected)
    {
        $sampleDialog.dialog('open');
    }
}

不同的 Web 浏览器处理双击事件的方式略有不同。因此,一般来说,您无法在"dblclick"之前阻止"单击"事件。回调beforeSelectRow将在 jqGrid 代码中定义的 enevt 处理程序click调用。在dblclick事件处理程序的jQuery文档中,您可以阅读以下内容(请参阅此处):

不建议将处理程序同时绑定到clickdblclick 同一元素的事件。触发的事件顺序各不相同 从浏览器到浏览器,有些之前会收到两个click事件 dblclick和其他人只有一个。双击灵敏度(最大值 检测为双击的点击间隔时间)可能因以下因素而异 操作系统和浏览器,并且通常是用户可配置的。

您目前所做的只是不推荐绑定"单击"和"dblclick"句柄的方法。

没有描述您遇到的原始问题,该问题可能位于回调实现ondblClickRow内部。唯一的解决方案是检查程序的重组,以使beforeSelectRow内部的操作与ondblClickRow回调之间没有冲突。

相关内容

  • 没有找到相关文章

最新更新