ValueChange事件和Ajax保存按钮

时间:2015-02-11 09:55:27

标签: jsf jsf-2

我有一个问题,我有一个ValueChange ajax事件的字段,我有一个保存ajax驱动按钮。当用户编辑字段然后单击保存按钮时,会发生此问题。第一次单击发送ValueChange ajax请求并更新其他字段,第二次单击保存表单。这是一个示例代码

<pf:commandButton id="save" value="save" actionListener="#{car.save}">
    <pf:ajax process="@form" update="@form" />
</pf:commandButton>

<pf:inputText id="price" value="#{car.price}">
    <pf:ajax event="valueChange" process="@form" listener="#{car.calculatePrice}" update=":form:totalPrice"/>
</pf:inputText>

有没有办法避免这种情况?我想一种方法是使保存按钮成为非ajax按钮。还有其他解决方案吗?感谢

1 个答案:

答案 0 :(得分:0)

问题出现在项目的某个地方,当你想要进行@form更新时,有一个<p:ajaxStatus>组件使整个网站变暗。通常JSF对此没有任何问题。

如果您在网站上使用<p:ajaxStatus>,则遇到同样的问题。有一个解决方案,您可以使用以下代码而不是问题中提到的代码

<h:commandButton id="save" value="save">
    <pf:ajax event="mousedown" process="@form" update="@form" listner="#{car.save}"/>
</h:commandButton>