gpt4 book ai didi

java - 添加/删除项目时的 Richfaces pickList ajax 事件

转载 作者:行者123 更新时间:2023-12-01 04:38:13 24 4
gpt4 key购买 nike

将项目添加到 richfaces 时是否会触发 ajax 事件(4.3.1.Final)pickList ?我需要根据是否选择了任何项目来启用禁用按钮。

开发者指南根本没有提到这一点,但我发现this当谷歌搜索时。使用建议的解决方案,我使用了以下 ajax 事件:

<rich:pickList 
var="item"
value="#{someBean.selectedItems}">
<a4j:ajax event="sourceblur" render="somePanelGroupWithTheButton" />
<a4j:ajax event="targetblur" render="somePanelGroupWithTheButton" />
</rich:pickList>

这有效。但是,每次源或目标列表模糊时都会触发该事件,这对于我的需求来说太频繁了。

我也尝试过<a4j:ajax event="additems" /><a4j:ajax event="removeitems" /> 。在这种情况下,该事件仅在删除或添加项目时触发,正如我想要的那样。然而,selectedItems直到事件被触发后才会填充新项目。这意味着我无法使用它来重新呈现按钮,因为在添加第一个元素后列表将为空,并且在添加第二个元素后列表大小为一。

是否有一个 ajax 事件可以监听在更新目标列表 ( selectedItems ) 后触发的事件? (并且某个地方一定有该组件支持的 ajax 事件的完整列表,对吧?)

我还按照建议尝试了更改事件 here ,但它没有被解雇。

最佳答案

刚刚再次尝试更改事件,突然就起作用了。可能是我第一次尝试时的拼写错误。这是要走的路:

<rich:pickList 
var="item"
value="#{someBean.selectedItems}">
<a4j:ajax event="change" render="somePanelGroupWithTheButton" />
</rich:pickList>

当触发该事件并重新渲染 somePanelGroupWithTheButton 时,someBean.selectedItems 已填充正确的项目。

这是一个缺陷,已在 4.3.0.M2 中解决:https://issues.jboss.org/browse/RF-12360 .

可以在此处找到 pickList 支持的事件:http://docs.jboss.org/richfaces/4.3.X/4.3.0.CR1/vdldoc/rich/pickList.html

关于java - 添加/删除项目时的 Richfaces pickList ajax 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17026688/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com