如何告诉复合组件它应该更新另一个 cc?
我试图给第一个抄送一个“更新”属性,该属性被传递给一个按钮。 然后我用该 id 注释了 snd cc。 显然 id 也找到了,因为我已经可以启动页面了。
但是单击按钮:没有任何反应!
输入抄送:
<composite:interface>
<composite:attribute name="update"/>
</composite:interface>
<composite:implementation>
<p:commandButton value="Create" update="#{cc.attrs.update}" action="register...">
</composite:implementation>
JSF:
<cc:myInput update=":myDataTable">
<cc:myDataTable id="myDataTable">
有人知道如何正确更新 cc 输入表单按钮内的 cc 数据表吗?
谢谢
最佳答案
您已指定以 :
开头的客户端 ID ,因此它将相对于 View 根进行解释(即它成为“绝对”客户端 ID)。但你似乎还有另一个NamingContainer
View 根和数据表组件之间的组件,例如 <h:form>
。它的 ID 也将最终出现在客户端 ID 中。
计算 myDataTable
的正确客户端 ID ,您需要在网络浏览器中打开页面,右键单击并查看源代码并找到 <table id="xxx:myDataTable">
组件其中 xxx
目前尚不清楚。您需要在 update
中准确使用此客户端 ID :
<cc:myInput update=":xxx:myDataTable">
关于java - 更新复合组件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9340309/