我尝试使用backbean update来更新面板,因为
one.xhtml
.....
<h:form>
<p:panel id="contentPanel">
.....
<ui:include src="#{main.pagePath}/>
</p:panel
</h:form>
two.xhtml
.......
<h:form>
....
<p:commandButton id="save" action="#{user.saveAction} update=currentpanel,:#{p:component('contentPanel')}/>
</h:form>
在此更新中,saveButton验证失败需要更新当前面板,但它也更新了contentPanel,因此我尝试使用backbean进行更新
user.java
public String saveAction()
{
if(validateFiled)
{
....
.....
RequestContext.getCurrentInstance.update('contentPanel');
}
return null;
}
但更新面板需要更多时间
答案 0 :(得分:0)
要更新正面的组件,您需要选择带有一些css或jquuary选择器的组件。例如。 update="@form"
或update="@(.className)"
或完整组件ID update=":formID:namingContainerIDifExsists:componentID"
RequestContext.getCurrentInstance.update('formID:contentPanel');
如果您有多个表单,请为其提供唯一ID