Jquery 具有动态数据源的DataTable可排序

Jquery 具有动态数据源的DataTable可排序,jquery,ajax,datatable,Jquery,Ajax,Datatable,我有一个包含“Time1”和“Time2”之间事件的表 单击“加载”,数据将由ajax函数加载,并带有一些参数 现在我想使用一个可排序的表 表格初始化正确。但是如果我用 $('table').append('<tr><td> ' + row.id + '</td><td>' + row.name + '</td></tr>'); $('table').append(“”+row.id+“”+row.name+“”); 我

我有一个包含“Time1”和“Time2”之间事件的表

单击“加载”,数据将由ajax函数加载,并带有一些参数

现在我想使用一个可排序的表

表格初始化正确。但是如果我用

$('table').append('<tr><td> ' + row.id + '</td><td>' + row.name + '</td></tr>');
$('table').append(“”+row.id+“”+row.name+“”);
我不能整理桌子

如何使用Ajax实现表的可排序性?我不知道这是什么意思


身份证件
名称
还有Javascript:

$(document).ready(function() {
    var dataset = null;

    $('#report-table').dataTable({
        data: dataset,
        columns: [
            { title: 'ID' },
            { title: 'Name' }
        ]   
    });

    $('#btn-load, .btn-filter-apply').on('click', function() {
        $('#filter').modal('hide');     

        var data = new Array();
        $('.filter-list tr').each(function(idx, row) {
            data.push([$(row).find('td').eq(0).text(), $(row).find('td').eq(1).text(), $(row).find('td').eq(2).text()]);
        });

        $.post('/data', { from: $('#ipDateTimeFrom').val(), till: $('#ipDateTimeTo').val(), data: data, ip: $('#sb-server option:selected').val() }, function(resp) {
            $('#report').html('');
            dataset = resp.data;
            $.each(resp.data, function(idx, row) {
                $('#report').append('<tr style="background-color:#ffffff"><td>' + row.ID + '</td><td>' + row.Name + '</td></tr>');
            });     
        });
    });
});
$(文档).ready(函数(){
var数据集=null;
$(“#报告表”)。数据表({
数据:数据集,
栏目:[
{title:'ID'},
{title:'Name'}
]   
});
$(“#btn加载,.btn筛选器应用”)。在('单击',函数()上{
$(“#过滤器”).modal('hide');
var data=新数组();
$('.filter list tr')。每个(函数(idx,行){
data.push([$(行).find('td').eq(0).text(),$(行).find('td').eq(1).text(),$(行).find('td').eq(2).text());
});
$.post('/data',{from:$('#ipDateTimeFrom').val(),至:$('#ipDateTimeTo').val(),数据:数据,ip:$('#sb服务器选项:所选').val(),函数(resp){
$(“#报告”).html(“”);
数据集=相应数据;
$每个(分别为数据、函数(idx、行){
$(“#报告”).append(“”+row.ID+“”+row.Name+“”);
});     
});
});
});
请参见和-您不需要AJAX来重新排序数据表编辑请注意,这要求您遵循正确的
数据表
惯例,使用
dataTable.row.add()
方法将数据添加到表中,因此在代码中包括:

$(document).ready(function() {
  var dataset = null;

  // Table represented as var table.
  var table = $('#report-table').DataTable({
    data: dataset,
    columns: [{
      title: 'ID'
    }, {
      title: 'Name'
    }]
  });

  var rowData = [ "id", "title" ];

  // Add an array of row data, e.g., [ "id", "title" ], have to redraw
  // when we modify table.
  table.row.add(rowData).draw(false);

  $('#btn-load, .btn-filter-apply').on('click', function() {
    $('#filter').modal('hide');

    var data = new Array();
    $('.filter-list tr').each(function(idx, row) {
      data.push([$(row).find('td').eq(0).text(), $(row).find('td').eq(1).text(), $(row).find('td').eq(2).text()]);
    });

    // Order based on index - maybe you can use your mysterious
    # $("filter-list tr") query above to order more dynamically
    table.order([1, 'asc'], [2, 'asc']).draw();
  });
});
还请注意,如果愿意,您可以按如下方式从初始值设定项中的AJAX源中获取数据:

$('#report-table').dataTable( {
  "ajax": "data.json"
});
编辑:。

请参见和-您不需要AJAX来重新排序数据表编辑请注意,这要求您遵循正确的
数据表
惯例,使用
dataTable.row.add()
方法将数据添加到表中,因此在代码中包括:

$(document).ready(function() {
  var dataset = null;

  // Table represented as var table.
  var table = $('#report-table').DataTable({
    data: dataset,
    columns: [{
      title: 'ID'
    }, {
      title: 'Name'
    }]
  });

  var rowData = [ "id", "title" ];

  // Add an array of row data, e.g., [ "id", "title" ], have to redraw
  // when we modify table.
  table.row.add(rowData).draw(false);

  $('#btn-load, .btn-filter-apply').on('click', function() {
    $('#filter').modal('hide');

    var data = new Array();
    $('.filter-list tr').each(function(idx, row) {
      data.push([$(row).find('td').eq(0).text(), $(row).find('td').eq(1).text(), $(row).find('td').eq(2).text()]);
    });

    // Order based on index - maybe you can use your mysterious
    # $("filter-list tr") query above to order more dynamically
    table.order([1, 'asc'], [2, 'asc']).draw();
  });
});
还请注意,如果愿意,您可以按如下方式从初始值设定项中的AJAX源中获取数据:

$('#report-table').dataTable( {
  "ajax": "data.json"
});

编辑:。

提供您的html和js代码,以便查看和帮助我将代码添加到我的帖子中,但我不知道如何解决。我认为我的QC不是很有帮助:-(提供你的html和js代码,以便人们可以检查和帮助我将代码添加到我的帖子中,但我不知道如何解决。我认为我的QC不是很有帮助:-(如果我尝试添加一些内容,我会收到一个错误。
无法读取未定义的属性“add”
我的dataTable版本是1.10.7,我发现了问题。使用
var table=$(“#报告表”)。dataTable
它不起作用。但是如果一开始有一个大D,它就起作用了
var table=$(“#报告表”).DataTable
感谢您的支持help@nagazi这是旧语法,pre
v1.10
,它显示了我使用DataTables的时间有多长…如果我尝试添加一些内容,就会出现错误。
无法读取未定义的属性“add”
我的dataTable版本是1.10.7,我发现了问题。
var table=$(“#report table”).dataTable
不起作用。但在开始时有一个大D,它就起作用了
var table=$(“#report table”).dataTable
感谢您的支持help@nagazi这是旧的语法,pre
v1.10
,它显示了我使用DataTables有多长时间了。。。