我有一个用于搜索的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。