DataTables-从旧表中删除数据并初始化新表



我在数据表方面遇到了问题,我用它来显示我从vuejs请求中获得的数据,但在我发出第二个请求后,我似乎无法获得数据并对其进行排序。

我的第一个请求可以像这个一样很好地取回数据

var dates = this.dates;
    var when = this.dates.when;
    this.$http.get('getProfitsFrom='+when, dates, function(response){
        this.response = response;
        window.setTimeout(function(){
            this.table = $('#table').DataTable({
                "aoColumns": [
                    { "bSortable": true },
                    { "bSortable": true },
                    { "bSortable": true },
                    { "bSortable": true },
                    { "bSortable": true }
                ] 
            });
        }, 1);
    }).error(function(){
        console.log("Error");
    });

在我从这里获得数据后,表被填充得很好,我可以正确地对它进行排序,但当我提出新请求时,它会破坏表,用数据填充表,但当我们单击排序时,它只显示第一个请求的初始数据。

这让我相信,我需要首先删除数据并销毁表,但我似乎什么都没做。

感谢您的帮助,我们将提供所需的任何进一步信息,谢谢

EDIT:我基本上需要的是知道如何重新初始化表,使其成为一个用我传入的新值填充的新表。

很抱歉,我把它作为回答而不是评论发布,但我的声誉太低了,无法发布评论。

在jsfiddle中,您可以使用伪造的ajax请求来模拟对php后端的调用。

您使用jQuery DataTables的具体原因是什么?有一个非常好的vue组件也能做到这一点(默认为引导程序样式,但您可以根据自己的喜好进行样式设置)https://github.com/matfish2/vue-tables

如果您通过ajax加载数据,请使您的表加载ajax。您需要重新处理json响应的结构。另请参阅此。

从那里,您可以调用table.draw();重新加载。

最新更新