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 update と 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 に答える