免费的 jqGrid 菜单上下文 - 菜单关闭设置

Free jqGrid Menu Context - Menu off set

只要菜​​单位于屏幕的最右边或最底层,它就会被剪切和遮盖,而不是动态地向左(或向上)移动。

我的HTML代码是:

<div class="contextMenu" id="runContextMenu" style="display:none">

我的Javascript代码是:

$("tr.jqgrow",'#'+gridName).contextMenu('runContextMenu', {
    bindings: {
    },
    onContextMenu: function (event, menu) {
    } });

您使用 contextMenu 的哪个版本?您使用哪个版本的 jQuery UI?您使用哪个版本的免费 jqGrid?

您描述的问题似乎是 contextMenu 的纯粹问题。有不同版本 contextMenu 插件。例如,可以使用 plugins 文件夹中的 jquery.contextmenu-ui.js。它包含 the lines,固定菜单的垂直位置。此外,我建议您使用 $('#'+gridName).contextMenu 而不是 $("tr.jqgrow",'#'+gridName).contextMenu。它只绑定到网格而不是绑定到网格的每一行,并在每次分页、排序或过滤后在 loadComplete 中重新绑定。 onContextMenuevent 参数包含有关单击行的完整信息。您可以使用

var rowid = $(event.target).closest("tr.jqgrow").attr("id");

获得rowid。参见 here

您可以使用另一个 contextMenu 插件,例如 https://swisnl.github.io/jQuery-contextMenu/