Как переслать ответ на страницу JSF от Backing Bean? - PullRequest
0 голосов
/ 18 мая 2011

Я сейчас работаю в проекте JSF и столкнулся с проблемой. У меня есть требование, как,

  1. У меня есть кнопка. Нажатие на кнопку должно вызвать диалоговое окно додзё, где будут кнопки «ОК» и «Отмена», а также информационное сообщение. Нажатие на кнопку отмены закроет всплывающее окно.

  2. Нажав на кнопку «ОК», вы отправите форму в javascript, вызвав document.formname.submit ().

Проблема заключается в отправке, мне нужно перевести пользователя на другую страницу с ответом. Я имею в виду вперед, а не редирект. Если я использую h: commandButton с атрибутом действия, появляется всплывающее окно, и оно отправляет форму, не ожидая действий пользователя во всплывающем окне.

Я хочу, чтобы первое нажатие кнопки активировало функцию javascript, а "OK" должно отправить форму и переслать ответ на другую страницу.

Пожалуйста, предложите мне, как я могу сделать это с моим xhtml, javascript, backing bean и face-config. При необходимости я также опубликую пример кода.

На данный момент у меня так,

1021 * XHTML *

<h:commandButton id="viewBtn" type="button" value="submit" onclick="submidt()"/>

ЯШ:

function submidt() {
                var h = new dijit.Dialog({
                    title: "Hello"
                });
                var content = "<input type='button' onclick='document.searchSecurityForm.submit();' value='OK' /><input type='button' onclick='this.hide();' value='Cancel' />";
                h.attr("content",content);
                h.show();
            }

лица-конфигурации:

    <navigation-rule>
    <from-view-id>/viewpage.xhtml</from-view-id>
    <navigation-case>
        <to-view-id>/editpage.xhtml</to-view-id>
    </navigation-case>
</navigation-rule>

так что это заставляет меня оставаться на одной странице (Просмотр страницы) с ответом. Я хочу, чтобы пользователь взял на редактирование страницы.

Заранее спасибо. GOG

1 Ответ

0 голосов
/ 18 мая 2011

Если я использую h: commandButton с атрибутом действия, появляется всплывающее окно и отправляет форму без ожидания действий пользователя во всплывающем окне.

в конце возвращает falseвашего метода javascript onclick.

function submidt() {
    var h = new dijit.Dialog({
        title: "Hello"
    });

    var content = "<input type='button' onclick='document.searchSecurityForm.submit();' value='OK' /><input type='button' onclick='this.hide();' value='Cancel' />";
    h.attr("content",content);
    h.show();
    return false;
}
...