0
期间结合我有以下标记:执行数据AJAX请求
<rich:panel id="selectorPanel">
<h:inputText value="#{myBean.field1}" />
<h:inputText value="#{myBean.field2}" />
<h:inputText value="#{myBean.field3}" />
<!-- and so forth -->
<h:selectOneMenu id="selector" value="#{myBean.selected}">
<a4j:ajax event="change" listener="#{myBean.doUpdateValues()}" render="selectorPanel" />
<f:selectItem itemLabel="#{msgs['bundle.addFilter']}" itemValue="#{null}" value="#{null}"/>
<f:selectItems value="#{myBean.filters}" />
</h:selectOneMenu>
</rich:panel>
问题:当我改变selectOneMenu
的selectorPanel
的值被重新呈现,因此inputText
的值正在刷新并设置为myBean
的属性值。
但我需要在重新渲染之前将用户在网页上输入的值设置为对应的bean的属性。
可能吗?怎么样?
'execute =“@ all”'是一个不好的习惯。这就像发送一个同步请求,即使它认为它看起来像一个异步请求。躲开它。 – Tiny
@Tiny那么你打算怎样解决这个问题呢? – user3663882
@Tiny BTW,f:ajax标签没有这样的属性。 JSF 2.1中有类似的东西吗? – user3663882