【发布时间】:2015-12-14 05:33:09
【问题描述】:
对primefaces还很陌生,所以如果容易的话,请原谅我。
因为我想在更改下拉列表中的值时清除自动完成文本框。
在我的 xhtml 页面中,当我从下拉列表中选择公司时,与该国家相关联的银行就会出现。当我选择银行时,与该银行关联的分行将进入下一个自动完成字段。工作正常。
但是当我选择下一个国家时,自动完成字段没有被清除。
请帮我解决这个问题。
这个 div 是国家/地区的下拉列表
<div class="row" >
<div class="grid4 bordered-box">
<p:outputLabel styleClass="col4 mandatory-field" value="#{msg['Label.CountryList']}" />
<div class="col5">
<p:selectOneMenu id="countryList" style="width: 10px ; border:1px #DDDBDB solid ;background-color: #F4EDC1;" filter="true" filterMatchMode="startsWith" required="true"
value="#{bankBranchController.bankBranchDetails.countryCode}">
<p:ajax process="@this" update="bankDD" />
<f:selectItems
value="#{bankBranchController.countryList}"
var="item" itemLabel="#{item.label}"
itemValue="#{item.value}" />
<f:selectItems/>
</p:selectOneMenu>
</div>
</div>
</div>
此 div 用于银行的自动完成
<div class="grid4 bordered-box">
<p:outputLabel styleClass="col4 mandatory-field" value=" Bank " />
<div class="col5">
<p:autoComplete id="bankDD" minQueryLength="3" value="#{bankBranchController.bankBranchDetails.bankName}" completeMethod="#{bankBranchController.getBankListAutoComplete}"
var="varItem" itemLabel="#{varItem.label}" itemValue="#{varItem.value}" scrollHeight="120" >
<p:ajax event="itemSelect" update="branchDD"></p:ajax>
</p:autoComplete>
</div>
</div>
此 div 用于分支的自动完成
<div class="col5">
<p:autoComplete id="branchDD" minQueryLength="3" value="#{bankBranchController.bankBranchDetails.bankBranchName}"
completeMethod="#{bankBranchController.getBankBranchListAutoComplete}"
var="item" itemLabel="#{item.label}" itemValue="#{item.value}" scrollHeight="120" >
</p:autoComplete>
</div>
【问题讨论】: