您可以在下面检查<h:selectOnemenu/>
我已添加valueChangeListener
属性,render="Component1,Component2"
来自同一页面的其他组件
<h:selectOneMenu required="true" id="ETState" requiredMessage="Required Message" value="#{bean.listofRecords}" valueChangeListener="#{bean.changeListner}'>
<f:selectItem itemLabel="Select Item" noSelectionOption="true" />
<f:selectItems value="#{eTManagedBean.fetchStates()}" var="state" itemLabel="#{state.value}" itemValue="#{state.stateId}" />
<a4j:ajax event="valueChange" immediate="true" execute="@this" render="Component1,Component2"/>
</h:selectOneMenu>
现在,如果当时选择了某个项目,则会触发事件并且组件也会渲染,但现在假设用户从SelectOneMenu中选择默认值。
默认值表示<f:selectItem itemLabel="Select Item" noSelectionOption="true" />
现在,在这种情况下,可以再次呈现其他组件Component1
和Component2
?