powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / RichFaces modalPanel
7 сообщений из 7, страница 1 из 1
RichFaces modalPanel
    #35624265
laureli
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
По кнопке
Код: plaintext
1.
2.
<a4j:commandButton id="edit_button" reRender="edit_panel" action="#{usersBean.edit}" value="Edit" onclick="javascript:Richfaces.showModalPanel('form:edit_panel');">
<f:param id="e_id" name="e_id" value="#{user.id}"/>
            </a4j:commandButton>
должно открываться окно для редактирования юзера.
...
Рейтинг: 0 / 0
RichFaces modalPanel
    #35624274
laureli
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Извините.
По кнопке
Код: plaintext
1.
2.
3.
<a4j:commandButton id="edit_button" reRender="edit_panel" action="#{usersBean.edit}"
                               value="Edit" onclick="javascript:Richfaces.showModalPanel('form:edit_panel');">
                <f:param id="e_id" name="e_id" value="#{user.id}"/>
            </a4j:commandButton>
должно открываться окно редактирования пользователя. Метод edit получает id и определяет юзера, которого надо редактировать (editingUser). ModalPanel выглядит так
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
<rich:modalPanel id="edit_panel" width="400" height="300" >
    <f:facet name="header">
        <h:outputText value="Edit data"/>
    </f:facet>
    <h:panelGrid columns="2">
        <h:outputLabel  for ="ed_name">
            <h:outputText value="Name"/>
        </h:outputLabel>
        <h:inputText id="ed_name" value="#{usersBean.editingUser.name}">
            <f:validateLength minimum="1" maximum="25"/>
        </h:inputText>

        <h:outputLabel  for ="ed_lastname">
            <h:outputText value="Lastname"/>
        </h:outputLabel>
        <h:inputText id="ed_lastname" value="#{usersBean.editingUser.lastname}">
            <f:validateLength minimum="1" maximum="25"/>
        </h:inputText>

        <h:outputLabel  for ="ed_inn">
            <h:outputText value="INN"/>
        </h:outputLabel>
        <h:inputText id="ed_inn" value="#{usersBean.editingUser.inn}"/>

        <a4j:commandButton id="save_button" reRender="table" action="#{usersBean.save}" value="Save"
                           onclick="javascript:Richfaces.hideModalPanel('form:edit_panel');"/>
        <a4j:commandButton id="ed_cbutton" onclick="javascript:Richfaces.hideModalPanel('form:edit_panel');"
                           value="Cancel"/>
    </h:panelGrid>
</rich:modalPanel>
Проблема в том, что окно сразу же сворачивается. Если убрать из кнопки reRenderer="edit_panel", то двнные в окне не булут обновляться. Как сделать так, чтобы в оане отображались данные нужного пользователя и окно не закрывалось?
Спасибо
...
Рейтинг: 0 / 0
RichFaces modalPanel
    #35624276
laureli
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Прошу прощения за опечатки.
...
Рейтинг: 0 / 0
RichFaces modalPanel
    #35629947
пролетевший
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Запрос асинхронный. Поэтому в случае onclick внвчале открывается панель, потом на его место выводится новая ( cвернутая ).
Надо либо открывать в методе oncomplete ( когда страница уже обновлена ), либо обновлять только содержимое панели.
Второе лучше - можно вначале отобразить только надпись типа "Идет загрузка" на случай медоенного соединения.
P.S. В силу особенностей реализации, панель должна содержать форму. При выводе она гуляет по дереву DOM на странице, поэтому то что вокруг нее поля ввода и кнопки не увидят. Резкльтат войны с особенностями IE ...
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
RichFaces modalPanel
    #37633529
Николаха
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброе ()!!!

Я не могу закрыть modalPanel. Использую Spring WebFlow 2 и RichFaces.
Делаю что-то вроде этого , но у меня проще (наверное).
Есть страница на которой выводится таблица и надо добавить новую запись в таблицу. Как уже поняли, я хочу добавить запись с помощью modalPanel и +применяю валидацию.
Как сделано в указанном примере не совсем подходит.

Код: html
1.
2.
3.
<a4j:commandButton action="closeWizard" value="Done"
	 oncomplete="Richfaces.hideModalPanel('ModalPanel');"
	 reRender="sumDisplay"/>



Этот код закроет modalPanel в любом случае, вот как закрыть только если валидатор не заругался? Т.е. нажали кнопку "closeWizard" поля диалога прошли валидацию, данные сохранились и закрылся диалог, а если не прошли валидацию, то диалог не должен закрываться.

Вот флоу
Код: xml
1.
2.
3.
4.
5.
<view-state ............... model="person">
      .............
      <transition on="closeWizard" validate="true">
	
      </transition>
...
Рейтинг: 0 / 0
RichFaces modalPanel
    #37633622
забыл ник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
<a4j:commandButton value="Save" action="#{myController.save}" oncomplete="#{facesContext.maximumSeverity == null ? 'Richfaces.hideModalPanel(\'myModalPanelId\');' : ''}" />
...
Рейтинг: 0 / 0
RichFaces modalPanel
    #37636627
Николаха
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
забыл ник<a4j:commandButton value="Save" action="#{myController.save}" oncomplete="#{facesContext.maximumSeverity == null ? 'Richfaces.hideModalPanel(\'myModalPanelId\');' : ''}" />

Спасибо! Помогло!!!
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / RichFaces modalPanel
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]