You need to sign in to do that
Don't have an account?
Refresh parent page components from included page, how?
Hi
I have a problem in getting communication between an included page and its parent page. Here is a very simplified version of two of my pages.
Main Page ------------- <apex:page controller="MainPageCntr" extensions="SubPageC"> <!-- The page --> <apex:outputPanel id="displayArea"> <!-- Used to rerender whole page --> <!-- Main Display --> <apex:outputPanel id="OppArea" rendered="{!switchOn}"> <apex:form> <apex:commandButton action="{!switchView}" value="Do it" rerender="displayArea"/> </apex:form> <apex:include pageName="SubPage" /> <!-- The Controller of this page is SubPageC --> <apex:include pageName="AnotherPage" /> </apex:outputPanel> <!-- Secondary Display --> <apex:outputPanel id="OppArea" rendered="{!switchOff}"> <apex:form> <apex:commandButton action="{!switchView}" value="Go Back" rerender="displayArea"/> </apex:form> A heap of other stuff goes here. </apex:outputPanel> </apex:outputPanel> </apex:page> Sub Page ------------- <apex:page controller=" SubPageC " > <!-- The page --> A whole heap of stuff but here is where I need a second clickable control. <!-- eg <apex:commandButton action="{!switchView}" value="Do it" rerender="displayArea"/> --> </apex:page>
The CommandButton on the main page hides one area, including the included pages, and displays a secondary one (until a user clicks a return button). The main page, the sub-pages and this button all work fine (in reality displaying a complex set of charts and tables relating to the business).
The problem? I now have a requirement of putting a similar button into the subpage itself. It needs to pass data and switch the views. I can’t figure out how to rerender displayArea from the subpage. Simply using the rerender attribute doesn’t work. I have tried using JavaScript in the subpage to reload the whole page. I also put this in the main page and had JavaScript in the subpage try and call it. I seem to get into a weird refresh / reload infinite loop.
<!-- The JS function for sub-page --> <apex:form> <apex:actionFunction name="refreshTheDA" rerender="displayArea"/> </apex:form>
Does anyone know how to do this?
Or any ideas on what to try?
Regards
MellowRen
Hi,
Try not to give reRender for the switchView action.