Подтвердить что ты не робот

Модальное подтверждениеDialog над модальным диалогом → все заблокировано

У меня есть модальный ConfirmDialog, который показан в модальном диалоге с использованием PrimeFaces 3.0.1. Если ConfirmDialog открывается, вся страница блокируется, включая сам ConfirmDialog... rien ne va plus

Я нашел Bugreport для Primefaces, который похож на http://code.google.com/p/primefaces/issues/detail?id=576, но поскольку ошибка связана с компоновкой макета, в моем случае это действительно не так.

Есть ли обходной путь или что-то еще?

Спасибо!!!

4b9b3361

Ответ 1

используйте атрибут appendToBody="true" тега p:dialog, чтобы решить эту проблему.

От PrimeFaces 5 от атрибута изменилось. Если вы используете 5+, используйте appendTo = "@(body)", см. Руководство по миграции: руководство по миграции

(Было бы полезно узнать вашу версию Primefaces)

Ответ 2

Используйте appendTo = "@(body)" в теге, который он работает для меня

Ответ 3

Так как мне нужна кнопка отправки в диалоговом окне, к сожалению, мне пришлось искать другое решение, а appendToBody = "true". Для всех, кто сталкивается с одной и той же проблемой, здесь приходит решение:

Если вы хотите:

<p:dialog modal="true">
    <h:form>
        ...
        <p:confirmDialog>
            <p:commandButton action="#{transportBean.execute}" type="submit" .../>
        </p:confirmDialog>
        ...
    </h:form>
</p:dialog

Это приведет к закрытой странице. Потяните Элемент формы на два элемента выше, и он будет работать:

<h:form>
    <p:dialog modal="true">        
        ...
        <p:confirmDialog>
            <p:commandButton action="#{transportBean.execute}" type="submit" .../>
        </p:confirmDialog>
        ...        
    </p:dialog
</h:form>