primefaces弹出窗口关闭

时间:2013-03-13 06:16:33

标签: jsf primefaces

我必须在primefaces对话框中实现搜索功能。提交搜索命令按钮后,搜索旁边的表需要更新。但每次我按下搜索按钮时弹出窗口都会关闭。请指导。下面是我的代码片段供参考:

  ......
  <p:commandButton id="search" value="Search" actionListener="#{createTicketBaseBean.searchUserFromList}" update="@form" onclick="dlg.show()"></p:commandButton>

       </h:panelGrid>

    </h:panelGroup> 
<h:panelGroup style="float:right" >

       <p:dataTable id="table" var="user" value="#{createTicketBaseBean.userList}" selection="#{createTicketBaseBean.selectedUser}" selectionMode="single" rowKey="#{user.email}" >
        <p:column headerText="Name"   >

       <p:commandLink id="nameselect" value="#{user.name}" onclick="dlg.hide()"/>  

        </p:column>

        <p:column headerText="Email">
            <h:outputText value="#{user.email}" />
        </p:column>

        <p:column headerText="Department">
            <h:outputText value="#{user.department}" />
        </p:column>


    </p:dataTable>

1 个答案:

答案 0 :(得分:2)

onclick中的p:commandbutton替换为oncomplete。单击按钮时会立即发生onclick事件。由于这是AJAX按钮(在Primefaces中这是默认设置),因此AJAX请求和对话框打开之间将存在竞争条件。使用oncomplete时,将在AJAX请求完成后调用它。