Jsf Primefaces 8在p:dataTable分页后未隐藏ajax状态
我有一个惰性加载的primefaces 8数据表,如下所示:Jsf Primefaces 8在p:dataTable分页后未隐藏ajax状态,jsf,primefaces,Jsf,Primefaces,我有一个惰性加载的primefaces 8数据表,如下所示: <p:dataTable value="#{....model}" var="..." rows="20" lazy="true" paginator="true" paginatorPosition="bottom"
<p:dataTable value="#{....model}" var="..." rows="20" lazy="true"
paginator="true" paginatorPosition="bottom"
paginatorTemplate="{CurrentPageReport} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
currentPageReportTemplate="{startRecord}-{endRecord} of {totalRecords} records"
emptyMessage="No records found">
....
</p:dataTable>
<p:ajaxStatus onstart="PF('statusDialog').show()" onsuccess="PF('statusDialog').hide()"/>
<p:dialog widgetVar="statusDialog" modal="false" draggable="false" closable="false" resizable="false"
showHeader="false"
styleClass="app-loader-dialog">
<div id="app-loader" class="app-loader">
<div class="app-loader-content">
loading...
</div>
</div>
</p:dialog>
....
以及定义如下的p:ajaxStatus:
<p:dataTable value="#{....model}" var="..." rows="20" lazy="true"
paginator="true" paginatorPosition="bottom"
paginatorTemplate="{CurrentPageReport} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
currentPageReportTemplate="{startRecord}-{endRecord} of {totalRecords} records"
emptyMessage="No records found">
....
</p:dataTable>
<p:ajaxStatus onstart="PF('statusDialog').show()" onsuccess="PF('statusDialog').hide()"/>
<p:dialog widgetVar="statusDialog" modal="false" draggable="false" closable="false" resizable="false"
showHeader="false"
styleClass="app-loader-dialog">
<div id="app-loader" class="app-loader">
<div class="app-loader-content">
loading...
</div>
</div>
</p:dialog>
加载。。。
我注意到的问题是,分页时,“状态”对话框会打开,但即使在分页完成后它仍会保持打开状态,此时它将被隐藏
但是对于其他ajax活动,如依赖下拉列表等,它会适当地显示和隐藏
如何解决此问题?我将数据表包装成了一个h:form,它现在可以工作了。浏览器的JavaScript控制台中有任何错误吗?嗨@JasperdeVries,谢谢。我没有收到错误,但控制台中的以下警告:主线程上的同步XMLHttpRequest已被弃用,因为它会对最终用户的体验产生有害影响。如需更多帮助,请查看https://xhr.spec.whatwg.org/用
oncomplete
代替onsuccess
怎么样?我完全按照你所做的做,但我使用oncomplete
。嗨@Melloware,谢谢。我已经尝试过这个问题,但仍然是同一个问题。嗨@Melloware,它现在可以工作了。如果是我的错误,我必须将数据表包装成一个h:form及其工作方式。谢谢