function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion
PranavLAXPranavLAX 

Rerender condition not working

Hi,

 

Following is my VF page where for some reason the re-rendering conditions are not working.

 

Basically want to re-render when Type of Upgrade is Software (Entitlements) or Hardware (Appliance)

 

Can you please tell me what I maybe doing wrong here?

 

 

 

<apex:page standardController="Opportunity" extensions="RMCWizard" tabStyle="Opportunity" sidebar="false" wizard="true" >

<apex:sectionHeader title="Opportunity Upgrade Wizard" subtitle="Step 1 of 7"/>
<apex:form id="theForm" >

<apex:pageBlock id="theSearchBlock" title="Product Information" mode="edit" >
<apex:pageBlockButtons location="both" >
<apex:commandButton action="{!saveRMC}" value="Save and Update RMC" />
<apex:commandButton aaction="{!saveSF}" value="Save and Create Upgrade Opportunity in SFDC" >
</apex:commandButton>

</apex:pageBlockButtons>

<apex:pageBlockSection id="Type" columns="1" collapsible="false" >
<apex:pageBlockSectionItem >
<apex:outputLabel >What is the upgrade Type?</apex:outputLabel>
<apex:inputField value="{!Opportunity.Type_of_Upgrade__c}" >
<apex:actionSupport event="onchange" status="StatusChange" rerender="theForm" />
</apex:inputField>
</apex:pageBlockSectionItem>
</apex:pageBlockSection>

<apex:pageBlockSection columns="1" id="SW1" collapsible="false" >
<apex:pageBlockSectionItem rendered="!{Opportunity.Type_of_Upgrade__c = 'Software (Entitlements)'}" >
<apex:outputLabel >Select the Software Product</apex:outputLabel>
<apex:inputField value="{!Opportunity.Software_Product__c}" >
</apex:inputField>
</apex:pageBlockSectionItem>
</apex:pageBlockSection>


<apex:pageBlockSection columns="1" id="Uprice" collapsible="false" >
<apex:pageBlockSectionItem rendered="{!Opportunity.Type_of_Upgrade__c='Software (Entitlements)'}" >
<apex:outputLabel >Select the Unit Price for the Product </apex:outputLabel>
<apex:inputField value="{!Opportunity.Software_Unit_Price__c}" >
</apex:inputField>
</apex:pageBlockSectionItem>
</apex:pageBlockSection>


<apex:pageBlockSection columns="1" id="HW1" collapsible="false" >
<apex:pageBlockSectionItem rendered="{!Opportunity.Type_of_Upgrade__c='Hardware (Appliance)'}" >
<apex:outputLabel >Select the Hardware Product</apex:outputLabel>
<apex:inputField value="{!Opportunity.Hardware_Product__c}" required="true">
<apex:actionSupport event="onchange" status="StatusChange" rerender="" >

</apex:actionSupport>
</apex:inputField>
</apex:pageBlockSectionItem>
</apex:pageBlockSection>


<apex:pageBlockSection id="DC" columns="1" collapsible="false" >
<apex:pageBlockSectionItem >
<apex:outputLabel >Select the Applicable Data Center</apex:outputLabel>
<apex:inputField value="{!Opportunity.Data_Center__c}" required="true">
</apex:inputField>
</apex:pageBlockSectionItem>
</apex:pageBlockSection>


<apex:pageBlockSection id="Partner" columns="1" collapsible="false" >
<apex:pageBlockSectionItem >
<apex:outputLabel >Confirm the Partner</apex:outputLabel>
<apex:inputField value="{!Opportunity.AccountID}" required="true">
</apex:inputField>
</apex:pageBlockSectionItem>
</apex:pageBlockSection>


<apex:pageBlockSection id="EC" columns="1" collapsible="false" >
<apex:pageBlockSectionItem >
<apex:outputLabel >Confirm the End Customer</apex:outputLabel>
<apex:inputField value="{!Opportunity.End_Customer__c}" required="true">
</apex:inputField>
</apex:pageBlockSectionItem>
</apex:pageBlockSection>

</apex:pageBlock>


</apex:form>
</apex:page>

ar_sfdcar_sfdc

try rerendering the pageblock "theSearchBlock" itself instead of the form. Let me know if that does not work. 

 

Also is there any reason you have another rerender below with nothing specified ?

bob_buzzardbob_buzzard

You have specified a status attribute to give feedback on the progress of the ajax request of 'StatusChange', but you haven't defined an apex:status component with that id as far as I can tell.

yvk431yvk431

try to place all the pageblockSection's inside an output panel and rerender

 

--yvk