【发布时间】:2016-01-12 09:40:42
【问题描述】:
是否可以有一个属于多个数据表的 contextMenu?如果有,怎么做?
【问题讨论】:
标签: primefaces datatable contextmenu
是否可以有一个属于多个数据表的 contextMenu?如果有,怎么做?
【问题讨论】:
标签: primefaces datatable contextmenu
我从来没有这样做过,但我会这样尝试:
<p:dataTable id="table1" ...>
<p:ajax event="contextMenu" update="myContextMenuId" listener="#{myContextMenuBL.initContextMenuForTable('table1')}" oncomplete="PF('myContextMenuWidgetVar').show(currentEvent);" />
</p:dataTable>
<p:dataTable id="table2" ...>
<p:ajax event="contextMenu" update="myContextMenuId" listener="#{myContextMenuBL.initContextMenuForTable('table2')}" oncomplete="PF('myContextMenuWidgetVar').show(currentEvent);" />
</p:dataTable>
<p:contextMenu id="myContextMenuId" widgetVar="myContextMenuWidgetVar">
<p:menuitem value="entry 1" />
...
</p:contextMenu>
在您的上下文菜单控制器中,您可以通过initContextMenuForTable() 的调用知道菜单正在为哪个表“工作”。如果您想要为每个表提供不同的上下文菜单,这将有点困难。但是为什么您不仅为每个表使用单独的上下文菜单呢?
【讨论】:
contextMenu 指向表的for 属性为每个表创建单独的菜单会更容易。