Absolute reRendering mit Richfaces
Frage
Mein Problem ist, dass Richfaces reRender
funktioniert nicht ‚unter‘ dem aktuellen Element in der Elementstruktur; nur obere Elemente erhalten erneut gerendert.
Gibt es eine Möglichkeit, den Zugang untere Elemente mit AJAX?
Jede mögliche Hilfe würde geschätzt! Daniel
Bearbeiten Ich bearbeitete diese Frage zu einer allgemeineren ein. Siehe Revisionen, wenn in der ursprünglichen Frage interessiert.
Lösung 2
Hier ist ein Beispiel, wo changePanel111()
den Inhalt eines unteren Elements ändert:
<h:form id="form" prependId="true">
<rich:panel id="PANEL1">
<h:outputText id="PANEL1TEXT" value="#{ajaxTestBean.panel1}"/>
<rich:panel id="PANEL11">
<h:outputText id="PANEL11TEXT" value="#{ajaxTestBean.panel11}"/>
<rich:panel id="PANEL111">
<h:outputText id="PANEL111TEXT" value="#{ajaxTestBean.panel111}"/>
</rich:panel>
</rich:panel>
<rich:panel id="PANEL12">
<h:outputText id="PANEL12TEXT" value="#{ajaxTestBean.panel12}"/>
<br/>
<a4j:commandLink value="CHANGE PANEL12" action="#{ajaxTestBean.changePanel12}">
<a4j:support reRender="PANEL12" event="onclick"/>
</a4j:commandLink>
<br/>
<a4j:commandLink value="CHANGE PANEL111" action="#{ajaxTestBean.changePanel111}">
<a4j:support reRender="form:PANEL111" event="onclick"/>
</a4j:commandLink>
</rich:panel>
</rich:panel>
</h:form>
Beachten Sie, wie die untere Element Bedürfnisse als form:PANEL111
identifiziert werden.
Hope, das hilft!
Andere Tipps
-
reRender
arbeitet mit einem derid
des Zielobjekts bietet Ihnen rerender wollen (innerhalb des gleichen Namenscontainer -form
am häufigsten) - die
id
sollte eine eindeutige Zeichenfolge sein, nach html spec -
reRender
ermöglicht dynamischen Wert - das heißtreRender="#{myBean.currentItemsToRerender}
Auf der Grundlage, dass ich denke, sollten Sie in der Lage zu erreichen, was Sie wollen (auch wenn es nicht ganz klar ist)
Update:
Für meine MyFaces + Richfaces App, <rich:panel>
Tag funktioniert nicht wie in der gewählten Antwort beschrieben. Als ich es <a4j:outputPanel ajaxRendered="true" />
geändert, begann es als gegeben, hier zu arbeiten „
Konfiguration: MyFaces 2.1.10 (Facelets verwendet für Templat) und Richfaces 4.2.3.
Hope dies dazu beitragen wird.