f:ajax标签执行整个表单而不是给定元素

时间:2018-10-09 07:02:15

标签: jsf jsf-2

我的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>

0 个答案:

没有答案