Проверьте, какая форма имеет ошибку

У меня есть модальное окно, которое я хочу запустить только тогда, когда одна из нескольких форм на странице имеет ошибки. Есть ли способ использовать el, чтобы определить, есть ли ошибки в конкретной форме?

пример псевдокода:

<h:form id="form1">

</h:form>

<h:form id="form2">

</h:form>

<a4j:rendered="#{form1.hasErrors()}">
    ... modal here ... 
</a4j:rendered>

1 ответ

Решение

Если у вас есть execute="@form" в запросе ajax, то вы можете использовать UIForm#isSubmitted() в комбинации с FacesContext#isValidationFailed(),

<h:form binding="#{form1}">

</h:form>

<h:form binding="#{form2}">

</h:form>

<a4j:xxx rendered="#{form1.submitted and facesContext.validationFailed}">
    Validation of form1 has failed.
</a4j:xxx>

<a4j:xxx rendered="#{form2.submitted and facesContext.validationFailed}">
    Validation of form2 has failed.
</a4j:xxx>
Другие вопросы по тегам