jqgrid自定义inlinenav按钮
本文关键字:按钮 inlinenav 自定义 jqgrid | 更新日期: 2023-09-27 17:58:14
我有一个项目,在这个项目中,我正在生成一个JQGrid,其中包含一个gridNav和一个inlineNav。gridNav有自定义按钮,inlineNav当然有内联功能。
我的问题是,是否有可能将gridNav移动到inlineNav之后,或者直接在inlineav中添加一个自定义按钮?自定义按钮需要出现在应用程序中的inlineNav按钮之后。
任何想法或建议都将不胜感激。我希望这样做而不必为gridNav完全编写一个内联编辑处理程序。
注意:我已经尝试过移动inlineNav和gridNav,这会阻止inlineAV的呈现
navGrid
、inlineNav
或navButtonAdd
添加的所有按钮都具有相同的结构。实际上,inlineNav
使用navButtonAdd
将按钮附加到导航栏(例如,请参见此处)。
因此,您可以使用jQuery.insertAfter、jQuery.after、jQuery.inseltBefore、jQuery.before等更改导航栏中按钮的位置。您只需要知道导航栏中的按钮ID即可。navGrid
中按钮的id将基于前缀"add_"
、"edit_"
、"del_"
、"search_"
、"refresh_"
、"view_"
和网格的id构建。inlineNav
的id以id The grid开始,后缀为"_ilsave"
、"_ilcancel"
、"_iladd"
和"_iledit"
。有关代码示例,请参阅答案。
更新:要在导航器按钮之间找到分隔符,您可以从Delete按钮中搜索下一个按钮,该按钮内有<span class="ui-separator">
:
var $separator = $("#del_list").next("td:has(span.ui-separator)");
或者,您可以在寻呼机的左侧搜索分隔符。让我们使用寻呼机<div class="pager"></div>
,那么寻呼机将具有ID为pager_left
、pager_center
和pager_right
的树部分。导航器将插入寻呼机的左侧。所以你可以使用
var $separator = $("#pager_left").find("td:has(span.ui-separator)");
以获得分离器。之后,您可以像其他按钮一样移动或移除分隔符。如果您需要额外的分隔符,您可以使用navSeparatorAdd方法。