我需要从 jsf 中的另一个表单更新一个表单内容。如果我给另一个表单 ID,它会显示一个错误,如找不到组件 ID。
我的编码是
<h:form id="form1" name="form1">
<h:commandLink value="Tab1" id="Tab1">
<f:ajax listener="#{managedBean.tabChange}" event="click" render="form2"></f:ajax>
</h:commandLink></li>
</h:form>
<h:form id="form2" name="form2">
<h:outputText value="#{managedBean.text}" id="text"/>
</h:form>
在渲染属性中
@all 为我工作。 但 form2/text 不起作用。
请帮助我。
提前致谢。
最佳答案
客户端 ID 与其命名容器相关,因此 JSF 仅在 form1
中查找名称为 form2
的组件。如果你想逃离这个容器,你需要在你的 id 前加一个冒号。
所以以下应该有效:
<f:ajax listener="#{managedBean.tabChange}" event="click" render=":form2"/>
关于jsf-2 - 从jsf中的另一个表单更新一个表单内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15335109/