PrimeFaces ajax update des Formular-innen p:dialog funktioniert nicht
Ich bin nicht in der Lage zu tun, ein ajax-update von h:form innen p:dialog. Hier ist, wie mein xhtml ist dafür ausgelegt sind. Ich habe keine verschachtelten Formen.
MainPage.xhtml hat entsprechende managedBean -> MainPageBean.
SearchView.xhtml hat zugehoerigen managedBean -> searchViewBean.
MainPage.xhtml
<ui:composition template='/templates/Layout.xhtml'>
<ui:define name='content'>
<h:form prependId='false' id='dataForm'>
...
<h:outputText value="#{mainPageBean.name}" />
<p:commandButton value="Search" onclick="dialogSearchView.show();" />
...
</h:form>
<p:dialog id="dialogSearchViewId" widgetVar="dialogSearchView" modal="true" appendToBody="true" dynamic="true">
<ui:include src="searchView.xhtml" />
</p:dialog>
</ui:define>
</ui:composition>
searchView.xhtml
<h:form prependId='false' id='sv_dataForm'>
...
<p:messages id="sv_messagesId" for="errorMessages" closeable="true" />
<p:inputText value="#{searchViewBean.lastName}" id="lastName" required="true" />
<p:commandButton value="Search" action="#{searchViewBean.search}" update=":sv_dataForm" ajax="true" />
<h:outputText value='#{searchViewBean.numberOfCustomers}' />
...
</h:form>
Wenn eine Taste auf der Hauptseite.xhtml angeklickt wird, zeigt es eine p:dialog. p:dialog enthält SearchView.xhtml. SearchView.xhtml enthält ein Formular. Wenn Sie eine einfache Suche auf Nachname gemacht wird, numberOfCustomers bestimmt ist. Wenn ich Debuggen Sie den code, den ich sehen kann, Wert in numberOfCustomers in searchViewBean aber p:dialog ist nicht immer aktualisiert. Aber Wenn ich irgendwelche Fehler bei der überprüfung, die ich sehen kann:p: Nachrichten immer angezeigt. Ich weiß nicht, warum p:dialog ist immer update. Wenn ich etwas falsch bitte lassen Sie mich wissen.
Dank.
InformationsquelleAutor sreekarN | 2014-02-17
Du musst angemeldet sein, um einen Kommentar abzugeben.
Schachtelung von Formularen ist ungültig HTML. Wenn Sie inclide seachView.xhtml Sie tun so etwas wie dieses:
Müssen Sie das p:dialog-element außerhalb der Haupt-h:form.
Standardmäßig commandButton hat ajax=true, so brauchen Sie nicht, es zu definieren.
Ups, ich weiß nicht, warum ich sah geschachtelte Formen, die es gibt. Glücklich, Sie bekommen es funktioniert.
InformationsquelleAutor Guillermo Gefaell
Ok habe das problem gefunden. Innerhalb searchView.xhtml lade ich auch ein p:Dialogfeld (addIndividialDialog) wie gezeigt unten in den code.
searchView.xhtml
aber ich habe diesen dialog(addIndividialDialog) box-code in der MainPage.xhtml (siehe unten).
MainPage.xhtml
Ich bin in der Lage zu öffnen (addIndividialDialog) dialog von searchView.xhtml, wenn ich auf die Schaltfläche klicke, aber ich bin nicht in der Lage zu tun, ein update auf searchView.xhtml, habe ich nicht alle Fehlermeldungen auch. Als ich umgezogen bin (addIndividialDialog) klicken Sie im Dialogfeld code in searchView.xhtml angefangen hat alles wie erwartet funktioniert.
Dieser arbeitete für mich -
searchView.xhtml
InformationsquelleAutor sreekarN