2016-10-03 43 views

回答

3

这听起来像它应该是默认的AJAX请求只是工作,如果你想它申请分拣/处理事件,你可能需要类似以下内容:

https://datatables.net/reference/event/processing 你可能会适应想要的东西的声音触发在数据表处理事件PACE:

$('#dataTable') 
    .on('processing.dt', function (e, settings, processing) { 
     if(processing){ 
      Pace.start(); 
     } else { 
      Pace.stop(); 
     } 
    }) 
.dataTable(); 
+1

如果它不能在AJAX上自动工作,您也可以使用preXhr和xhr事件 - https://datatables.net/reference/event/preXhr和https://datatables.net/reference/event/preXhr了解这些特定事件的文档。将以上示例适用于这些特定事件(在'preXhr.dt'和'xhr.dt'上)将是两个需要挂钩的事件应该相当简单 – Brian

+0

在我的应用程序中,我有很多使用数据表的页面与不同的** ID ** s。我可以设置全球范围内的设置,而不是将现有代码修改为答案吗? – Cataclysm

+0

这是你描述的工作。我还需要将** pace **的'ajax'选项设置为'false'吗? – Cataclysm

1

那么,如果你想显示PACE为应用程序中每个Ajax请求,那么你可以像指定它下面

在加载之前添加步速选项。

<script> 
     window.paceOptions = { 
      ajax: { 
       trackMethods: ['GET', 'POST', 'PUT', 'DELETE', 'REMOVE'] 
      } 
     }; 

    </script> 
    <script src="../js/progressBar/pace.min.js"></script> 

这将显示您的PACE进度条为您的服务器的每个ajax请求。

+0

是的,你是正确的..我也从[PACE文档](http://github.hubspot.com/pace/)阅读了这篇文章,但我认为它不会影响DataTable的ajax请求。但我不确定因为我在本地主机上运行,​​请求太快。 – Cataclysm

+0

在我的情况下,加载“DataTables”(通过'DataTables' ajax请求)时,它工作得很好。你能为你的问题创建一个'JSFiddle'吗? –

+0

在我的情况下,它在首次加载页面时起作用。我想要触发[dataTable search](https://datatables.net/reference/api/search())。 – Cataclysm

相关问题