是否可以仅通过指定父复合ID来更新复合组件的子组件?例如,如果我有:
<composite:interface>
<composite:attribute name="value" type="..." required="true"/>
</composite:interface>
<composite:implementation>
<p:treeTable id="main-tree" ...>
...
</p:treeTable>
</composite:implementation>以某种方式使用它,比如:
<my:comp id="composite-component" />
...
<p:ajax update="composite-component" />这有可能吗?现在,我看到的唯一方法是显式地指定子组件ID:
<p:ajax update="composite-component:main-tree" />发布于 2012-03-16 04:21:17
这可以通过在复合组件实现周围包装一个<div>并设置div的id=#{cc.clientId}来完成
<html ...>
<composite:interface>
...
</composite:interface>
<composite:implementation>
<div id="#{cc.clientId}">
...
</div>
</composite:implementation>
</html>在using页面中:
<my:comp id="composite-component" />
....
<h:commandButton value="Update first name">
<f:ajax execute="composite-component" render="composite-component">
</h:commandButton><p:ajax>应该会相应地工作。
https://stackoverflow.com/questions/9726818
复制相似问题