У меня есть требование, когда я хочу, чтобы пользователь перемещал строки данных вверх и вниз. Я думал, что контекстное меню будет удобно, так как будет движение вверх и перемещение . Для этого я попытался реализовать контекстное меню для примера данных из Primefaces Showcase. Однако я не получаю выбранные значения из данных, которые будут отображаться в диалоговом окне.Невозможно получить выбранные значения в диалоге при использовании ContextMenu с Datatable
Пожалуйста, найдите следующий код:
<p:contextMenu for="availableCars">
<p:menuitem value="View" update="display" icon="ui-icon-search" oncomplete="carDialog.show()"/>
</p:contextMenu>
<p:dataTable id="availableCars" var="car" value="#{RequestBean.formFields}" rowKey="#{car.car_group}" selectionMode="single" selection="#{RequestBean.selectedField}">
<p:column headerText="Field Label">
<h:outputText value="#{car.car_label}" />
</p:column>
<p:column headerText="Field Group">
<h:outputText value="#{car.car_group}" />
</p:column>
<p:column headerText="Field Name">
<h:outputText value="#{car.car_name}" />
</p:column>
</p:dataTable>
<p:dialog header="Car Detail" widgetVar="carDialog" resizable="false"
width="200" showEffect="clip" hideEffect="fold" id="dialog">
<h:panelGrid id="display" columns="2" cellpadding="4">
<h:outputText value="Car label:" />
<h:outputText value="#{RequestBean.selectedField.car_label}" style="font-weight:bold"/>
<h:outputText value="car Group" />
<h:outputText value="#{RequestBean.selectedField.car_group}" style="font-weight:bold"/>
<h:outputText value="Car Name:" />
<h:outputText value="#{RequestBean.selectedField.car_name}" style="font-weight:bold"/>
</h:panelGrid>
</p:dialog>
Любая помощь будет оценена. N.B: Я использую PF 2.2.1
Спасибо @dratewka. Оно работает. Кроме того, я использовал rowSelectListener = "# {RequestBean.onCarSelect}", чтобы установить данные в selectedField. –