0

我想渲染执行 ajax 调用的相同按钮

 <p:commandButton id="load"
     actionListener="#{bean.Valid}"
     rendered="#{bean.renderButton}"                 
     value="Load Object"
     ajax="true"
     update="load,group,ip1">
  </p:commandButton>

我尝试通过 p:commanButton 更新以及 bean 中的 RequestContext.getCurrentInstance() 来做到这一点,但它们都不起作用

 RequestContext requestContext = RequestContext.getCurrentInstance();
 requestContext.update("mainForm:load");

任何建议我在这里缺少什么?

谢谢

4

1 回答 1

2

你需要把你的按钮包裹在里面,例如:

<h:panelGroup id="button-wrapper">
    <p:commandButton id="load"
        actionListener="#{bean.Valid}"
        rendered="#{bean.renderButton}"                 
        value="Load Object"
        ajax="true"
        update="button-wrapper,group,ip1">
     </p:commandButton>
</h:panelGroup>

否则,您的按钮将无法更新组件树中不再呈现的元素。

于 2013-06-07T21:49:42.863 回答