【问题标题】:ajax reload for datatable not workingajax重新加载数据表不起作用
【发布时间】:2016-02-03 12:34:17
【问题描述】:

我一直在尝试每 10 秒重新加载一次 jQuery 数据表,但我遇到了如下所述的问题。

下面是代码:

$(document).ready(function(){
    var table1=$('.MessagingTable').DataTable({
    }); 

    setInterval(
        function(){
            table1.api().ajax.reload(); 
        }, 
        10000 
    ); 
}); 

它抛出:

Uncaught TypeError: Object [object Object] has no method 'api'

【问题讨论】:

  • 您确定不是.dataTable() 而不是.DataTable()。但是当然,如​​果不仅仅是一个错字,你会在控制台中得到其他错误,对吧?!
  • 你是对的,如果你在谈论 jquery 数据表插件。现在取决于您使用的版本,它可能只是:table1.ajax.reload();datatables.net/reference/api/ajax.reload()
  • 我什至尝试过,但它在控制台中抛出“Uncaught TypeError: Cannot call method 'reload' of undefined”
  • 如果你这样做console.log(table1);,你会得到什么?请提供您正在使用的数据表插件/版本的相关链接,我不确定它是哪一个

标签: jquery ajax datatables


【解决方案1】:

解决方案

使用通过 Ajax 检索的数据重新加载表的正确方法是使用 ajax.reload()API方法如下图:

var table = $('#example').DataTable({
    ajax: 'https://api.myjson.com/bins/qgcu'
});

setInterval(
    function(){
        table.ajax.reload(); 
    }, 
    10000
); 

演示

有关代码和演示,请参阅 this jsFiddle

【讨论】:

  • 你能告诉我如何形成这个 ajax: URL 如上所示,在我的例子中,我创建了简单的数据表,每次页面加载时都从服务器端获取数据(比如 java bean 值)我只需要刷新每分钟从服务器端获取数据的数据表
猜你喜欢
  • 1970-01-01
  • 2023-03-11
  • 1970-01-01
  • 2015-11-01
  • 1970-01-01
  • 1970-01-01
  • 2018-10-08
  • 2017-02-07
  • 1970-01-01
相关资源
最近更新 更多