Jsf 2 ValueCangeListener在JSF2.0中进行第二次尝试
我有两个selectOneMenu元素,它们的id只起作用。 valueChangeListener在第二次尝试时工作。 在第一次尝试时,页面正在刷新,但没有转到值更改代码,或者没有值更改。在第二次尝试时,它进入valueChangeCode并获得新值,并且两个SelectOne菜单都显示新值Jsf 2 ValueCangeListener在JSF2.0中进行第二次尝试,jsf-2,Jsf 2,我有两个selectOneMenu元素,它们的id只起作用。 valueChangeListener在第二次尝试时工作。 在第一次尝试时,页面正在刷新,但没有转到值更改代码,或者没有值更改。在第二次尝试时,它进入valueChangeCode并获得新值,并且两个SelectOne菜单都显示新值 <h:selectOneMenu id="changeCurrency" value="#dataBean.showCurrency}" val
<h:selectOneMenu id="changeCurrency" value="#dataBean.showCurrency}" valueChangeListener="#myBean.changePaymentCurreny}"
valueChangeListener="#{myBean.changePaymentCurreny}"
immediate="true"
onchange="submit()">
<f:selectItems value="#{my.currencyList}" />
</h:selectOneMenu>
<h:selectOneMenu id="changeCurrency2"
value="#{dateBean.showCurrency}"
valueChangeListener="#{myBean.changePaymentCurreny}"
immediate="true"
onchange="submit()">
<f:selectItems value="#{myBean.currencyList}" />
</h:selectOneMenu>
当我删除以getChildren.clear结尾的行并更改其中一行的值时,changeListener调用并在第一次尝试时更改该值。
在视图中,只有我更改的一个selectmenu显示新值。其他SelectOne功能表仍显示旧值
dataBean和myBean位于sessionScope中。当我将myBean放在requestscope上时,在页面加载上工作的ajax请求不会导致myBean为null
有人能把这个站说清楚吗。
非常感谢。尝试为ajax事件标记更改valueChangeListener,如下所示
<h:selectOneMenu id="changeCurrency" value="#dataBean.showCurrency}" valueChangeListener="#myBean.changePaymentCurreny}" onchange="submit()">
<f:selectItems value="#{my.currencyList}" />
<f:ajax event="change" listener="#{myBean.changePaymentCurreny}" process="@this" partialSubmit="true" />
</h:selectOneMenu>
<h:selectOneMenu id="changeCurrency2" value="#{dateBean.showCurrency}" onchange="submit()">
<f:selectItems value="#{myBean.currencyList}" />
<f:ajax event="change" listener="#{myBean.changePaymentCurreny}" process="@this" partialSubmit="true" />
</h:selectOneMenu>
<h:selectOneMenu id="changeCurrency" value="#dataBean.showCurrency}" valueChangeListener="#myBean.changePaymentCurreny}" onchange="submit()">
<f:selectItems value="#{my.currencyList}" />
<f:ajax event="change" listener="#{myBean.changePaymentCurreny}" process="@this" partialSubmit="true" />
</h:selectOneMenu>
<h:selectOneMenu id="changeCurrency2" value="#{dateBean.showCurrency}" onchange="submit()">
<f:selectItems value="#{myBean.currencyList}" />
<f:ajax event="change" listener="#{myBean.changePaymentCurreny}" process="@this" partialSubmit="true" />
</h:selectOneMenu>