我看看这个example,并且在用户点击其中一个已选择的行后,不明白如何保存选择。因此,例如当用户选择3行并点击其中一行时,它将显示仅有一个选定行的信息。
现在我有了延迟加载和上下文菜单的DataTable,如下所示:
<p:dataTable id="al_table" value="#{alarmTable.alarms}"
selection="#{alarmTable.selectedAlarm}" selectionMode="multiple"
var="alarm" resizableColumns="true" paginator="true" rows="50"
sortBy="#{alarm.alarmTimestamp}" sortOrder="descending"
paginatorTemplate="{CurrentPageReport} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
rowsPerPageTemplate="25, 50, 75, 100" lazy="true"
style="table-layout: auto">
<p:ajax event="rowDblselect" update=":form:display"
oncomplete="alarmDialog.show()" />
除了选择之外,所有工作都很顺利。有了像现在这样的行为,我不能同时对多行执行任何操作,因为它总是失去选择。如何解决这个问题?
答案 0 :(得分:1)
目前的实施不可能。您应该使用不在上下文菜单中的按钮。
答案 1 :(得分:0)
您必须使用数据模型来管理您的选择。请参阅此Sample,它适用于所有单击和双击事件。