Одна страница содержит панель вкладок с богатым лицом и имеет 4 вкладки. На одной из вкладок у меня есть текстовое поле и кнопка сохранения. Без сохранения данных. Если я перехожу на другую вкладку, она должна показывать всплывающее сообщение с несохраненными данными и предотвращать навигацию.Показать богатый: popupPanel на клике богатых: вкладка
Я попытался вызвать всплывающее окно, используя различные скрипты java, загружающие атрибуты rich: tabPanel, но не служащие цели.
Вот код
<rich:tabPanel onclick="#{rich:component('confirmation')}.show();return false" switchType="ajax" id="wizardTab" itemChangeListener="#{bean.tabChange}" activeItem="#{bean.activeTab}">
<rich:tab id="tab1"
// tab1
</rich:tab>
<rich:tab id="tab2"
</rich:tab>
<rich:tab id="tab3"
</rich:tab>
<rich:tab id="tab4"
<h:inputText id="test"
styleClass="span2" maxlength="25"
value="#{bean.rowForChange.code}">
<f:ajax event="blur" execute="@this"/>
</h:inputText>
<h:commandButton value="Update" styleClass="button"
style="width:160px"
action="#{bean.updtae}">
<a4j:ajax execute="paramValue"
render="table simeditPnl" />
</h:commandButton>
</rich:tab>
</rich:tabPanel>
<rich:popupPanel render="#{jCRDataRefreshManagement.updateStatus}" id="confirmation" modal="false" autosized="true" resizeable="false">
<f:facet name="header">Confirmation</f:facet>
<h:panelGrid>
<h:panelGrid columns="2">
<h:graphicImage value="/alert.png" />
<h:outputText value="You have unsaved changes. Are you sure?" style="FONT-SIZE: large;" />
</h:panelGrid>
<h:panelGroup>
<input type="button" value="OK"
onclick="#{rich:component('confirmation')}.hide();submit();return false" />
<input type="button" value="Cancel"
onclick="#{rich:component('confirmation')}.hide();return false" />
</h:panelGroup>
</h:panelGrid>
</rich:popupPanel>
Если все несохраненные данные о текстовом поле на вкладке 4 и попытались нажать на любой другой вкладке она должна оставаться на вкладке 4 и показать poupup подтверждения, как указано выше.
С этой реализацией мое всплывающее окно открывается всякий раз, когда я нажимаю вкладку.
Пожалуйста, укажите ошибку, которую я делаю, или дайте предложение для вышеупомянутого сценария. Любая помощь, связанная с использованием
Пожалуйста, добавьте код, который вы используете. –
добавлен фрагмент кода – Firu