gpt4 book ai didi

java - 何时用冒号前缀表单 ID

转载 作者:行者123 更新时间:2023-12-04 16:40:25 24 4
gpt4 key购买 nike

我有两种形式的两个数据表,forma 和 formg。每个表格里面都有一个 p:dataTable 、groupsa 和groupsg。在每个数据表中,都有一个自定义列显示名为 fava 和 favg 的图像( h:graphicImage )。

单击图像时,将更新其他数据表中的图像。

<p:ajax event="click" listener="#{agent.toogleFavorite}"
update="fava, :formg:groupsg:favg" />

没有冒号,我得到一个异常(exception):
javax.faces.FacesException: Cannot find component with identifier "forma:agentsa:fava" referenced from "groupsg:0:favg".

formg:groupsg:favg 和 :formg:groupsg:favg 有什么区别?

我正在使用 JSF2.0 和 PrimeFaces 3.4。

最佳答案

:前缀将使其成为绝对客户端 ID,因此将相对于 UIViewRoot 进行搜索。而不是最近的父级 NamingContainer .当您想要引用不在同一个最接近的父级内的组件时,您应该(必须)使用它 NamingContainer . <h:form><h:dataTable> (和 <p:dataTable> )是 NamingContainer成分。

另见 How to find out client ID of component for ajax update/render? Cannot find component with expression "foo" referenced from "bar"详细说明。

关于java - 何时用冒号前缀表单 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12367597/

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