Primefaces 自动完成+下拉列表+基本面
对primefaces来说非常陌生,所以如果很简单,请原谅我 因为我想在更改下拉列表中的值时清除自动完成文本框 在我的xhtml页面中,当我从下拉列表中选择company时,将出现与该国家相关联的银行。当我接管银行时,和该银行相关联的分支机构将进入下一个自动完成字段。这很好 但当我进入下一个国家时,自动完成字段并没有被清除 请帮我解决这个问题 此分区是国家/地区的下拉列表Primefaces 自动完成+下拉列表+基本面,primefaces,autocomplete,Primefaces,Autocomplete,对primefaces来说非常陌生,所以如果很简单,请原谅我 因为我想在更改下拉列表中的值时清除自动完成文本框 在我的xhtml页面中,当我从下拉列表中选择company时,将出现与该国家相关联的银行。当我接管银行时,和该银行相关联的分支机构将进入下一个自动完成字段。这很好 但当我进入下一个国家时,自动完成字段并没有被清除 请帮我解决这个问题 此分区是国家/地区的下拉列表 <div class="row" > <div class="grid4 bordered-box
<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 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>
您应该在中添加侦听器方法,并且在该方法中您应该bankBranchDetails.setBankName甚至bankBranchDetails=new bankBranchDetails,无论如何,它应该被清除。您应该在中添加侦听器方法,并且在该方法中您应该bankBranchDetails.setBankName甚至bankBranchDetails=new bankBranchDetails,无论如何,它应该被清除。我在那个国家的下拉列表中也写了同样的内容。在该resetBranch中,bankBranchDetails.setBankName.But会导致错误,因为类“java.lang.string”没有属性“label”。这是正确的,您的autocomplete的completeMethod返回字符串列表,并且您希望使用var=item itemLabel={item.label}itemValue={item.value},但java.lang.string既没有getLabel,也不是getValue方法。。。这是另一个问题。那么还有其他的解决办法吗?嗯。。。什么这不是一个问题,只是修复你的我写了同样的,在那个国家下拉列表。在该resetBranch中,bankBranchDetails.setBankName.But会导致错误,因为类“java.lang.string”没有属性“label”。这是正确的,您的autocomplete的completeMethod返回字符串列表,并且您希望使用var=item itemLabel={item.label}itemValue={item.value},但java.lang.string既没有getLabel,也不是getValue方法。。。这是另一个问题。那么还有其他的解决办法吗?嗯。。。什么这不是问题,只是解决你的问题