当我有一个Ajax侦听器和另一个操作侦听器以供命令按钮,JSF的特定行为



我有

<p:inputText id="sales-person">
        <p:ajax event="change"
            update="employee_name" listener="#{quoteBean.rebuildServiceDataList}"/>
</p:inputText>

...和

 <p:commandButton id="confirm-button" process="#{breadcrumb.breadcrumb_base_name}" value="#{shop_msgs['continue.label']}"  actionListener="#{quoteBean.showPayUI}" />

跳过了一部分代码以理解。

基本上,当我更改输入文本上的某些内容时,它将调用一些AJAX方法来获取一些数据,验证等。当我单击命令按钮时,它将提交。

在Chrome浏览器中,如果我键入某些内容并直接单击"提交"按钮,它实际上是第一次启动OnChange事件,请调用Ajax,然后将执行命令按钮的操作侦听器执行。

但是,如果IE执行上述步骤,则只会执行OnChanage并调用Ajax方法。将不会调用ActionListner。

有人可以帮我吗?

编辑1:即使使用onclick in命令按钮,我也尝试过,即使在IE中也没有称呼。当我尝试单击按钮时,仅执行文本框的Onchange事件。

预先感谢。

通过按 f12 来使用IE浏览器的开发人员工具。控制台中有错误消息吗?Ajax呼叫会发生什么?我的第一个想法,我怀疑您的豆子或类似豆缺乏,因为它基本上是有效的。

根据我的经验(与数据塔有关),IE确实比Firefox或Chrome更有麻烦。

最新更新