更新多个组件ajax

时间:2015-09-24 12:38:37

标签: ajax jsf primefaces

我想在ajax操作后更新两个组件但不知道如何执行此操作(如果可能的话)。 我有三页:

           <h:form id="loginForm"> 
                <p:panelGrid columns="2" >
                    <h:outputText value="Login: "/>
                    <p:inputText value="#{bean.person.username}" requiredMessage="*" /> 
                    <h:outputText value="Hasło: "/>
                    <p:password value="#{bean.person.password}" requiredMessage="*"/>                        
                    <p:commandButton value="Login" action="#{bean.validatePerson}" update="loginConfirmationPage"/>
                </p:panelGrid>
            </h:form>

菜单页面与上面类似,菜单项具有呈现属性(用户登录时显示注销按钮)和loginConfirmationPage,我想在其上显示用户名。

我需要更新这两个pm:页面以获取菜单页面上的注销按钮,并在确认页面上显示用户名。 我怎样才能做到这一点?现在我只能更新一页。我尝试输入与以下类似的声明:

<p:commandButton value="Login" action="#{bean.validatePerson}" update="loginConfirmationPage,menuPage"/>

<p:commandButton value="Login" action="#{bean.validatePerson}" update="loginConfirmationPage;menuPage"/>

两者都不起作用。我怎么能这样做?

1 个答案:

答案 0 :(得分:-3)

var name = "";
$.post("Path/To/Server/File", {'serverFileVariableName' : clientElementID},
       //data is what the server file will return
       function(data){
       //In this case, the data is the username.
       name = data;
       //invoke the show method to display 
       logOut.show();
}
);
//done