Json 如何在dataTable中调用ajax后追加数据

Json 如何在dataTable中调用ajax后追加数据,json,codeigniter,Json,Codeigniter,我正在使用dataTable jquery插件。我的数据来自ajax。代码如下所示 我想在ajax调用之后创建表。在我的html文件中 $(document).ready(function(){ $(".report-table").DataTable({ "pagingType": "full_numbers" }); }); 在我的javascript中 $("#student_report_f

我正在使用dataTable jquery插件。我的数据来自ajax。代码如下所示 我想在ajax调用之后创建表。在我的html文件中

$(document).ready(function(){
    $(".report-table").DataTable({
                        "pagingType": "full_numbers"
                    });
});
在我的javascript中

$("#student_report_form_btn").on('click',function(){
            $("#student_report_detail_list").empty();
            if($("#student_report_form").valid())
            {
                $.ajax({
                    url:site + 'index.php/user_report',
                    type:"post",
                    dataType:"json",
                    data:sume data,
                    success:function(msg){
                        if(msg.user_report_detail !='')
                        {
                            //dddd(msg);return false;
                            student_report_table = '';
                            student_report_table += '<div class="table-responsive">';
                            student_report_table += '<table class="table table-bordered report-table" id="report-table">';
                                    student_report_table +='<tr><th>Date</th><th>Intime</th><th>Outtime</th></tr>';
                                    $.each(msg.user_report_detail,function(k,v){
                                        student_report_table += '<tr><td>'+ v['date'] +'</td><td>'+ v['intime'] +'</td><td>'+ v['outtime'] +'</td></tr>';
                                    });
                            student_report_table += '</table>';
                            student_report_table += '</div>';
                            $("#student_report_detail_list").append(student_report_table);
                        }else{
                            $("#student_report_detail_list").append("<div class='alert alert-danger'>" +
                                "<button type='button' class='close' data-dismiss='alert' aria-label='Close'> <span aria-hidden='true'>&times;</span></button>" +
                                "<strong>Sorry!</strong> There are not records for this user." +
                                "</div>");
                            setTimeout(function() { $('.alert').alert('close'); }, 2000);
                        }
                    }
                });
            }
        });
$(“#学生报告(表格)”)。在('click',function()上{
$(“#学生报告#详细信息#列表”).empty();
如果($(“#学生报告表”).valid())
{
$.ajax({
url:site+'index.php/user_report',
类型:“post”,
数据类型:“json”,
数据:sume数据,
成功:功能(msg){
如果(msg.user\u report\u detail!='')
{
//dddd(msg);返回false;
学生报告表=“”;
学生报告表+='';
学生报告表+='';
学生报告表+='DateIntimeOuttime';
$.each(msg.user\u report\u详细信息,函数(k,v){
学生报告表+=''+v['date']+''+v['intime']+''+v['outtime']+'';
});
学生报告表+='';
学生报告表+='';
$(“#学生报告#明细表”)。追加(学生报告#表);
}否则{
$(“#学生报告#明细表”)。附加(“”+
“&次;”+
“对不起!没有此用户的记录。”+
"");
setTimeout(函数(){$('.alert').alert('close');},2000);
}
}
});
}
});

这里的数据表不工作。请提供帮助。

如果您创建表的方法有效(有更好的可能性创建数据表),我认为唯一的问题是您必须初始化表

试试下面的方法

$("#student_report_form_btn").on('click',function()
{
    $("#student_report_detail_list").empty();
    if($("#student_report_form").valid())
    {
        $.ajax({
            url:site + 'index.php/user_report',
            type:"post",
            dataType:"json",
            data:sume data,
            success:function(msg){
                if(msg.user_report_detail !='')
                {
                    //dddd(msg);return false;
                    student_report_table = '';
                    student_report_table += '<div class="table-responsive">';
                    student_report_table += '<table class="table table-bordered report-table" id="report-table">';
                            student_report_table +='<tr><th>Date</th><th>Intime</th><th>Outtime</th></tr>';
                            $.each(msg.user_report_detail,function(k,v){
                                student_report_table += '<tr><td>'+ v['date'] +'</td><td>'+ v['intime'] +'</td><td>'+ v['outtime'] +'</td></tr>';
                            });
                    student_report_table += '</table>';
                    student_report_table += '</div>';
                    $("#student_report_detail_list").append(student_report_table);
                    $("#student_report_detail_list .report-table").DataTable({
                        "pagingType": "full_numbers"
                    });
                }else{
                    $("#student_report_detail_list").append("<div class='alert alert-danger'>" +
                        "<button type='button' class='close' data-dismiss='alert' aria-label='Close'> <span aria-hidden='true'>&times;</span></button>" +
                        "<strong>Sorry!</strong> There are not records for this user." +
                        "</div>");
                    setTimeout(function() { $('.alert').alert('close'); }, 2000);
                }
            }
        });
    }
});
$(“#学生报告(表格)”)。在('click',function()上
{
$(“#学生报告#详细信息#列表”).empty();
如果($(“#学生报告表”).valid())
{
$.ajax({
url:site+'index.php/user_report',
类型:“post”,
数据类型:“json”,
数据:sume数据,
成功:功能(msg){
如果(msg.user\u report\u detail!='')
{
//dddd(msg);返回false;
学生报告表=“”;
学生报告表+='';
学生报告表+='';
学生报告表+='DateIntimeOuttime';
$.each(msg.user\u report\u详细信息,函数(k,v){
学生报告表+=''+v['date']+''+v['intime']+''+v['outtime']+'';
});
学生报告表+='';
学生报告表+='';
$(“#学生报告#明细表”)。追加(学生报告#表);
$(“#学生#报告#详细信息(列表.报告表”).DataTable({
“pagingType”:“完整编号”
});
}否则{
$(“#学生报告#明细表”)。附加(“”+
“&次;”+
“对不起!没有此用户的记录。”+
"");
setTimeout(函数(){$('.alert').alert('close');},2000);
}
}
});
}
});

如果您创建表的方法有效(有更好的可能性创建数据表),我认为唯一的问题是您必须初始化表

试试下面的方法

$("#student_report_form_btn").on('click',function()
{
    $("#student_report_detail_list").empty();
    if($("#student_report_form").valid())
    {
        $.ajax({
            url:site + 'index.php/user_report',
            type:"post",
            dataType:"json",
            data:sume data,
            success:function(msg){
                if(msg.user_report_detail !='')
                {
                    //dddd(msg);return false;
                    student_report_table = '';
                    student_report_table += '<div class="table-responsive">';
                    student_report_table += '<table class="table table-bordered report-table" id="report-table">';
                            student_report_table +='<tr><th>Date</th><th>Intime</th><th>Outtime</th></tr>';
                            $.each(msg.user_report_detail,function(k,v){
                                student_report_table += '<tr><td>'+ v['date'] +'</td><td>'+ v['intime'] +'</td><td>'+ v['outtime'] +'</td></tr>';
                            });
                    student_report_table += '</table>';
                    student_report_table += '</div>';
                    $("#student_report_detail_list").append(student_report_table);
                    $("#student_report_detail_list .report-table").DataTable({
                        "pagingType": "full_numbers"
                    });
                }else{
                    $("#student_report_detail_list").append("<div class='alert alert-danger'>" +
                        "<button type='button' class='close' data-dismiss='alert' aria-label='Close'> <span aria-hidden='true'>&times;</span></button>" +
                        "<strong>Sorry!</strong> There are not records for this user." +
                        "</div>");
                    setTimeout(function() { $('.alert').alert('close'); }, 2000);
                }
            }
        });
    }
});
$(“#学生报告(表格)”)。在('click',function()上
{
$(“#学生报告#详细信息#列表”).empty();
如果($(“#学生报告表”).valid())
{
$.ajax({
url:site+'index.php/user_report',
类型:“post”,
数据类型:“json”,
数据:sume数据,
成功:功能(msg){
如果(msg.user\u report\u detail!='')
{
//dddd(msg);返回false;
学生报告表=“”;
学生报告表+='';
学生报告表+='';
学生报告表+='DateIntimeOuttime';
$.each(msg.user\u report\u详细信息,函数(k,v){
学生报告表+=''+v['date']+''+v['intime']+''+v['outtime']+'';
});
学生报告表+='';
学生报告表+='';
$(“#学生报告#明细表”)。追加(学生报告#表);
$(“#学生#报告#详细信息(列表.报告表”).DataTable({
“pagingType”:“完整编号”
});
}否则{
$(“#学生报告#明细表”)。附加(“”+
“&次;”+
“对不起!没有此用户的记录。”+
"");
setTimeout(函数(){$('.alert').alert('close');},2000);
}
}
});
}
});