加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

PrimeFaces ajax在另一个字段上更改输入和操作

发布时间:2020-12-16 02:46:47 所属栏目:百科 来源:网络整理
导读:我有这个代码,在改变输入元素的值时,我会监听并更新其他一些字段. 问题是,当我通过键入内容更改此输入字段的值并使用id:submit命中commandButton时,它会触发侦听器(可能是因为在字段模糊期间检查了值的更改),但不是侦听器X,即commandButton的actionListener
我有这个代码,在改变输入元素的值时,我会监听并更新其他一些字段.

问题是,当我通过键入内容更改此输入字段的值并使用id:submit命中commandButton时,它会触发侦听器(可能是因为在字段模糊期间检查了值的更改),但不是侦听器X,即commandButton的actionListener.所以我必须再次单击该按钮才能调用侦听器X.

当然,如果我通过单击其他地方然后单击commandButton导致输入字段模糊,它会按预期工作.看起来当输入字段的模糊与commandButton的点击一致时,只发生模糊 – 只是忽略按钮的点击.有任何想法吗?

<p:inputText ...>
  <p:ajax event="change" update="..." listener="..." />
</p:inputText>

...

<p:commandButton id="submit" ... actionListener="X" />

编辑:我使用PrimeFaces v5.1和JSF v2.1.19,FWIW.

解决方法

我有一个类似的问题(可能完全相同)使用JSF和PrimeFaces 6.1,并在此处发布:

PrimeFaces inputText ajax event=valueChange fires AFTER commandButton clicked

@ jasper-de-vries回复了一个有效的,有效的解决方案:)

他的帖子的快速摘要是将ajax更新更改为seletor:

<p:ajax update="@(form :input:not(button))" />

因为valueChange或change事件更新所有表单,包括按钮,然后忽略按钮上的第一次单击,它将更新特定元素(表单)而不更新其他元素(按钮).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读