У меня есть кнопка редактирования на странице результатов поиска. При каждом нажатии этой кнопки пользователь должен ввести дату, прежде чем перейти на следующую страницу.
Кнопка без модальной функции:
<h:commandButton action="#{controller.open(rec, false)}" />
Каким-то образом я хотел бы ввести модальный диалог перед открытием страницы, чтобы получить введенную дату из диалогового окна модели и передать ее в метод open, что-то вроде:
<h:commandButton onClick="openAModelDialog()"
action="#{controller.open(rec, false, enteredDate)}" />
У меня есть SEAM 2.2, JSF и Richfaces. Не уверен, как лучше всего удовлетворить эту потребность.
То, чего я достиг до сих пор:
Изменена кнопка для открытия модального диалога.
<a4j:commandButton onclick="#{rich:component('mp')}.show(); return false;"
action="#{controller.open(rec, false)}" />
Настройка модального диалога:
<rich:modalPanel id="mp" minHeight="300" minWidth="450">
<f:facet name="header">
<h:outputText value="Enter Signature Date" />
</f:facet>
<table>
<tr>
<td>Enter Signature Date:</td>
<td>
<rich:calendar disabled="#{readOnly}"
enableManualInput="false" converterMessage="'Signature Date' must be a date."
datePattern="MM/dd/yyyy"
value="#{searchController.enteredSignatureDate}"
ajaxSingle="false" showWeekDaysBar="false" showWeeksBar="false"
requiredMessage="Please provide the Signature Date."/>
<input type="button" onclick="#{rich:component('mp')}.hide()" value="Enter" />
</td>
</tr>
</table>
</rich:modalPanel>
Но сейчас я не знаю, как запечатлеть введенную дату.