I am embedding a VisualForce page with a form and some inputs in a standard page layout. My form mark-up:
<apex:page standardController="Contact" extensions="ContactControllerExt" action="{!init}" showHeader="false" sidebar="false" doctype="html-5.0">
<apex:pagemessages />
<apex:outputpanel rendered="{!showAssignPanelB}">
<apex:form >
<apex:selectList id="area" size="1" label="Area">
<apex:selectOptions value="{!regionSelectList}" />
</apex:selectList>
<apex:commandButton value="Assign" action="{!assignContact}"/><br/>
<input type="text" name="reason" placeholder="Reason" />
<apex:commandButton value="Not Approved" action="{!mediaBNotApprove}"/><br/>
</apex:form>
</apex:outputpanel>
</apex:page>
If I replace the text input field with:
<apex:inputText id="reason"/>
the element renders as:
<input type="text" name="j_id0:j_id28:reason" id="j_id0:j_id28:reason" />
and I don't know how to look for that name in the page parameters in the controller. The <select ...> element also renders with an unpredictable name like j_id0:j_id28:area
How can I get the rendered names more predictable?