AjaxStatus无法使用对话框

时间:2012-08-01 08:49:43

标签: ajax jsf-2 primefaces

我有一个用于搜索的ajaxstatus和对话框

<h:body>
    <p:ajaxStatus onstart="statusDialog.show();" onsuccess="statusDialog.hide();"/>  

    <p:dialog id="loading" modal="true" widgetVar="statusDialog" header="" draggable="false" closable="false">  
        <p:graphicImage value="/images/ajax-loader.gif" />  
    </p:dialog>

对话部分

<p:dialog id="showDial" header="Search" widgetVar="srch" resizable="false" >
                    <h:panelGrid id="searchGrid" columns="2" cellpadding="10" >
                        <h:outputLabel id="srchIdLbl" value="Employee ID:" />
                        <p:inputText id="srchIdTxt" value="#{employee.employeeId}" />

                        <p:commandButton id="search1" value="Search" type="submit" action ="#{employee.search()}" 
                                         update="patientTbl"/>
                        <p:commandButton id="reset1" value="Reset" type="reset" /> 
                    </h:panelGrid>
                </p:dialog>

上面的代码工作正常,它显示加载对话框。但是一旦搜索完成,对话框将保留在屏幕上。 我在commandButton id =“search1”中添加了以下代码来关闭对话框

onComplete="showDialog.hide()"

* 问题: *如果我添加上面的行,则不会显示AjaxStatus。我想知道它为什么不显示。

我还尝试将以下代码添加到commandButton id =“search1”

onclick="statusDialog.show()" onselect="statusDialog.show()" onmousedown="statusDialog.show()" onComplete="showDialog.hide() statusDialog.hide()"

问题在上面的代码中,对话框的背景被禁用,直到ManagedBeans代码完成并且对话框也关闭但是当我单击搜索按钮时,它会加载先前输入的搜索参数,即使单击也是如此重置按钮,数据没有。

如何克服上述输入数据的上述问题,或者如何以更好的方式避免上述问题的Ajaxstatus。

0 个答案:

没有答案