我遇到了 jqGrid
的问题我不知道是否有简单的解决方案。
当我第一次点击一行时,应用 slideUp
如果我再次单击应用程序 slideDown
,则会显示有关寄存器信息的标题这个标题。这项工作编码在 onSelectRow
jqGrid
的事件并且工作正常。
当我连续双击时,问题就来了。在这种情况下,应用程序 slideUp
有关包含标题的寄存器的所有内容。我要防止的行为是 onSelectRow
因为当 ondblclickRow
事件被触发,onSelectRow
之前事件被触发了两次。
这是我的代码片段:
ondblClickRow: function(id) {
if (model.gisgridmap.context.id=="griddiv" && $(".editbt").length>0) {
if (model.selectedrow == id) {
$el.trigger("onUnselectRow");
$(this).find(".ui-state-highlight, [aria-selected='true']").removeClass('ui-state-highlight');
model.selectedrow = 0;
}
else{
$el.trigger("onSelectRow", id);
$(this).find('[aria-selected=true]').addClass('ui-state-highlight');
model.selectedrow = id;
pui.editForm(model);
}
},
onSelectRow: function(id,status,e){
if (model.selectedrow == id) {
$el.trigger("onUnselectRow");
$(this).find(".ui-state-highlight, [aria-selected='true']").removeClass('ui-state-highlight');
model.selectedrow = 0;
}
else{
$el.trigger("onSelectRow", id);
$(this).find('[aria-selected=true]').addClass('ui-state-highlight');
model.selectedrow = id;
}
}
提前致谢。
最佳答案
你可以试试这个:
ondblClickRow: function(id, status, e) {
e.preventDefault(); // see : http://api.jquery.com/event.preventDefault
e.stopPropagation(); // see : http://api.jquery.com/event.stopPropagation
...
}
关于javascript - 如何在触发 ondblClickRow 事件时防止 onSelectRow 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19132401/