如何使用AJAX请求的JSON数据填充jQuery DataTable?

时间:2016-02-02 04:50:29

标签: javascript jquery html ajax datatables

我试图使用由AJAX请求的json.txt填充的jQuery数据表但由于某种原因我的文件没有加载到我的数据表中。

为什么我的数据表无法正确填充?我有一些语法错误吗?

这是我的数据表语法:

$(document).ready(function () {
    var table = $('#pftable_hdr').DataTable({
        "ajax": {
            "url": "/path.txt",
            "dataSrc": ""
        },
        "columns": [
            { "data": "Fecha" },
            { "data": "Rid" },
            { "data": "Pdv" },
            { "data": "Pla" },
            { "data": "Descripcion" },
            { "data": "Total" },
            { "data": "Cantidad" }
        ],
        scrollY: "500px",
        scrollX: true,
        scrollCollapse: true,
        fixedColumns: {
            leftColumns: 3
        }
    });
});

这是我桌子的HTML:

<table class="table table-hover no-more-tables table-iconmebanquet-detail" id="pftable_hdr">
    <thead>
        <tr>
            <th style="">Fecha</th>
            <th style="">Rid</th>
            <th style="">Pdv</th>
            <th style="">Pla</th>
            <th style="">Descripcion</th>
            <th style="">Total</th>
            <th style="">Cantidad</th>
        </tr>
    </thead>
    <tfoot>
        <tr>
            <th style="">Fecha</th>
            <th style="">Rid</th>
            <th style="">Pdv</th>
            <th style="">Pla</th>
            <th style="">Descripcion</th>
            <th style="">Total</th>
            <th style="">Cantidad</th>
       </tr>
   </tfoot>
</table>

这是我在正确路线上的JSON文件:

[
  {
    "Fecha": "/Date(1451631600000)/",
    "Rid": "CENAS",
    "Pdv": "REST",
    "Pla": "81",
    "Descripcion": "ENS FRUTAS",
    "Total": 53.0000,
    "Cantidad": 1
  },
  {
    "Fecha": "/Date(1451631600000)/",
    "Rid": "CENAS",
    "Pdv": "REST",
    "Pla": "87",
    "Descripcion": "CAFE AMER ILIMIT",
    "Total": 23.0000,
    "Cantidad": 1
  },
  {
    "Fecha": "/Date(1451631600000)/",
    "Rid": "CENAS",
    "Pdv": "REST",
    "Pla": "97",
    "Descripcion": "QUESADILLAS TRAD (2)",
    "Total": 51.0000,
    "Cantidad": 1
  },
  {
    "Fecha": "/Date(1451631600000)/",
    "Rid": "CENAS",
    "Pdv": "VTSI",
    "Pla": "114",
    "Descripcion": "ENS CHIAPANECA",
    "Total": 65.0000,
    "Cantidad": 1
  },
  {
    "Fecha": "/Date(1451631600000)/",
    "Rid": "COMIDAS",
    "Pdv": "VTMO",
    "Pla": "196",
    "Descripcion": "POZ ROJO SUP MAC",
    "Total": 91.0000,
    "Cantidad": 1
  }
]

2 个答案:

答案 0 :(得分:1)

源代码中文本文件的URL错误:

"url": "C:\inetpub\wwwroot\potzolcalli.brain.arpon.com\path.txt",

在JavaScript中,反斜杠\是字符串的转义字符,例如换行符:"\n"

您应该使用file:// url:

"url": "file://C:/inetpub/wwwroot/potzolcalli.brain.arpon.com/path.txt",

或使用本地http服务器来处理您的文件,例如http-server,假设您安装了node

npm install -g http-server
cd <root directory of your files, e.g. your index.html>
http-server

然后,您可以在http://localhost:8080打开浏览器以使用您的网站,类似于稍后在生产中使用http服务器提供服务的方式。

答案 1 :(得分:0)

更新: 我通过@Leon Adles的建议解决了改变我的Ip的问题 所以我做了下一次修正,现在它完美地演绎了

“url”:“/ path.txt”,