【问题标题】:Ajax Failed Response to create a DataTableAjax 响应创建数据表失败
【发布时间】:2017-05-08 00:36:39
【问题描述】:

我正在尝试从 AJAX 查询构建 JSON,并尝试将其放入数据表中,但在浏览器中出现此错误:

DataTables 警告:表 id = 示例 - JSON 响应无效。见http://datatables.net/tn/1

我该如何解决?

我使用 Mongo 作为数据库,我在其中查找关系以获取您的 id 并发送该 id 并获取详细信息及其附件以武装表格的行。

$(document).ready(function() {
    var jsonObj = [];
    $.ajax({
    type: "GET",
    url: "/obtenerRelacion",
    dataType: "json",
    success: function(relacion){
        for(var i in relacion) {
            var id = relacion[i].cajaChica._id;
            $.ajax({
                  type: "GET",
                  url: "/obtener/detalle/anexo/"+id+"",
                  dataType: "json",
                      success: function(cajaChica){
                        for(var j in cajaChica) {
                            item = {};
                            item['hechoPor'] = relacion[i].cajaChica.HECHO_POR_CORREO;
                            item['aprobadoPor'] = relacion[i].cajaChica.APROBADO;
                            item['categoria'] = cajaChica[j].NOMBRE_CATEGORIA;
                            item['valor'] = cajaChica[j].VALOR                          
                            item['ruc_ced'] = cajaChica[j].RUC_CED;
                            item['fecha'] = cajaChica[j].FECHA;
                            item['empresa'] = cajaChica[j].NOMBRE_EMPRESA;
                            item['entregadoA'] = cajaChica[j].NOMBRE_ENTREGADO;
                            item['proveedor'] = cajaChica[j].NOMBRE_PROVEEDOR;
                            item['cargadoA'] = cajaChica[j].NOMBRE_CARGADO;
                            item['detalle']= cajaChica[j].DETALLE_CAJA;
                            if(cajaChica[j].anexo != undefined){
                                item['tipo'] = cajaChica[j].anexo['TIPO'];
                                item['numFact'] = cajaChica[j].anexo['ESTAB_FAC']+''+cajaChica[j].anexo['PTO_FAC']+''+cajaChica[j].anexo['SEC_FAC'];
                            }else{
                                item['tipo'] = 'NO HAY';
                                item['numFact'] = 'NO EXISTE'
                            }
                            jsonObj.push(item);
                        }
                      }
                });
            }
    },
    complete: function(){
        $('#table').DataTable( {
                ajax: jsonObj,
            columns: [
                { title: "aprobadoPor" },
                { title: "cargadoA" },
                { title: "categoria" },
                { title: "detalle" },
                { title: "empresa" },
                { title: "entregadoA" },
                { title: "fecha" },
                { title: "hechoPor" },
                { title: "proveedor" },
                { title: "ruc_ced" },
                { title: "tipo" },
                { title: "valor" },
                { title: "numFact"}
            ]
          });
    }
  });
});

【问题讨论】:

  • 你在做自己的ajax所以ajax选项不适用

标签: jquery ajax datatable


【解决方案1】:

尝试调整您的代码,使其类似于以下链接中的代码, 它对我有用 call datatable on button click 确保您返回的是 JSON 字符串,如果有,您可以测试其有效性here

此链接中的 sn-p 也可能有帮助

Nested Datatables Selection Derived Values

祝你一切顺利

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-02-21
    • 2010-11-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多