我的xhtml文档中有两个f:ajax标签,每个ajax标签都配置为呈现两个不同的元素。但是,触发这些标签中的任何一个都会呈现整个表单。
<h:body>
<h:form>
<h:panelGrid id="externalUsers" columns="3" cellpadding="2" cellspacing="2">
<h:selectOneRadio id="fruits" value="#{login.fruit}">
<f:selectItem itemValue="apple" itemLabel="Apple"/>
<f:selectItem itemValue="banana" itemLabel="Banana"/>
<f:selectItem itemValue="grape" itemLabel="Grape"/>
<f:selectItem itemValue="cherry" itemLabel="Cherry"/>
</h:selectOneRadio>
<h:commandButton value="Check Match" id="fruitButton">
<f:ajax execute="fruits" render="fruitMessage"></f:ajax>
</h:commandButton>
<h:outputText id="fruitMessage" value="#{utility.retrieveMessage()}"/>
<h:inputText id="credsType" value="#{login.credType}">
</h:inputText>
<h:commandButton value="CheckCreds" id="checkButton">
<f:ajax render="credMessage" execute="credsType" listener="#{utility.changeData}"></f:ajax>
</h:commandButton>
<h:outputText id="credMessage" value="#{login.credType}"/>
</h:panelGrid>
</h:form>
</h:body>