You need to sign in to do that
Don't have an account?
GC_00001
Cannot get Rerender after apex:actionFunction to work
In a Controller for a VF page I have the following which opens up a small form. That bit is OK. If an error is returned from that function I want the form to remain showing (it has an error message) but it disappears after the Save button is selected on that small form and I cannot get it to remain. If there is no error then I am expecting processing to continue OK i.e the small form to have disappeared and stay disappeared.
It is this line in the following code extract that I am expecting to change. Any help would be appreciated on what the rerender statement is doing.
<apex:actionFunction name="saveNewShipTo" action="{!saveNewShipTo}" rerender="shipTo, msgSfdcSave, msgWebService, errmsg"
<!--embedded New "Ship To" address control -->
<apex:outputpanel styleClass="shipToDialogue" id="dialogPanel" layout="block">
<apex:form id="shipToForm" >
<apex:actionRegion >
<apex:pageBlock >
<apex:pageBlockSection columns="1" showHeader="false">
<apex:repeat value="{!$ObjectType.Ship_To__c.FieldSets.Order_Header}" var="field">
<apex:inputField value="{!ShipToProxy[field]}" style="margin-left:10pt;"
styleClass="dialogueField {!field}" />
</apex:repeat>
<apex:actionRegion immediate="true">
<apex:commandButton value="{!$Label.Get_A_C_Vat_Id}" action="{!getAccountVatId}" status="overlayStatus" reRender="ship_to_vat_id" />
</apex:actionRegion>
<apex:inputField id="ship_to_vat_id" value="{!ShipToProxy.VAT_Id2__c}" style="margin-left: 10pt;"
styleClass="dialogueField VAT_Id2__c" />
<!--
<apex:repeat value="{!ShipToAddressFields}" var="shipTo">
<apex:inputField value="{!ShipToProxy[shipTo]}" style="margin-left:10pt;" styleClass="dialogueField {!shipTo}"/>
</apex:repeat>
-->
</apex:pageBlockSection>
</apex:pageBlock>
<apex:actionFunction name="saveNewShipTo" action="{!saveNewShipTo}" rerender="shipTo, msgSfdcSave, msgWebService, errmsg" status="overlayStatus"/>status="overlayStatus"/>
<script>
//have to do that every time when ShipTo area is re-rendered
initDialogue("{!$Component.dialogPanel}");
</script>
</apex:actionRegion>
</apex:form>
</apex:outputpanel>
<div id="overlay"></div>
</apex:page>
It is this line in the following code extract that I am expecting to change. Any help would be appreciated on what the rerender statement is doing.
<apex:actionFunction name="saveNewShipTo" action="{!saveNewShipTo}" rerender="shipTo, msgSfdcSave, msgWebService, errmsg"
<!--embedded New "Ship To" address control -->
<apex:outputpanel styleClass="shipToDialogue" id="dialogPanel" layout="block">
<apex:form id="shipToForm" >
<apex:actionRegion >
<apex:pageBlock >
<apex:pageBlockSection columns="1" showHeader="false">
<apex:repeat value="{!$ObjectType.Ship_To__c.FieldSets.Order_Header}" var="field">
<apex:inputField value="{!ShipToProxy[field]}" style="margin-left:10pt;"
styleClass="dialogueField {!field}" />
</apex:repeat>
<apex:actionRegion immediate="true">
<apex:commandButton value="{!$Label.Get_A_C_Vat_Id}" action="{!getAccountVatId}" status="overlayStatus" reRender="ship_to_vat_id" />
</apex:actionRegion>
<apex:inputField id="ship_to_vat_id" value="{!ShipToProxy.VAT_Id2__c}" style="margin-left: 10pt;"
styleClass="dialogueField VAT_Id2__c" />
<!--
<apex:repeat value="{!ShipToAddressFields}" var="shipTo">
<apex:inputField value="{!ShipToProxy[shipTo]}" style="margin-left:10pt;" styleClass="dialogueField {!shipTo}"/>
</apex:repeat>
-->
</apex:pageBlockSection>
</apex:pageBlock>
<apex:actionFunction name="saveNewShipTo" action="{!saveNewShipTo}" rerender="shipTo, msgSfdcSave, msgWebService, errmsg" status="overlayStatus"/>status="overlayStatus"/>
<script>
//have to do that every time when ShipTo area is re-rendered
initDialogue("{!$Component.dialogPanel}");
</script>
</apex:actionRegion>
</apex:form>
</apex:outputpanel>
<div id="overlay"></div>
</apex:page>