DataTables Ajax添加到json数组的链接

时间:2014-08-15 10:14:02

标签: jquery ajax json datatables

所以这是我的json输出
{“draw”:1,“recordsTotal”:2,“recordsFiltered”:2,“data”:[[“2014-08-01”,“34”,“84”],[“2014-08-02” , “36”, “61”]]}

并使用DataTable我可以构建我的表格

<table>
<tr>
    <td>2014-08-01</td>
    <td>34</td>
    <td>84</td>
</tr>
<tr>
   <td>2014-08-02</td>
   <td>36</td>
   <td>61</td>
</tr>
</table>

那就是我的桌子你得到了图片...所以第一列是日期,第二列是ID,第三列只是一个值......我想添加一个ID的链接

<table>
    <tr>
      <td>2014-08-01</td>
      <td><a href="foo.php?id=34">34</a></td>
      <td>84</td>
    </tr>
    <tr>
      <td>2014-08-02</td>
      <td><a href="foo.php?id=36">36</a></td>
      <td>61</td>
    </tr>
    </table>

这是我用于“ajax”的代码

$('#tr1').dataTable({
            "processing": true,
            "bServerSide": false,
            "sAjaxSource": "rep/cm.php?pm",
            "sServerMethod": "GET",
            "wPaginationType": "full_numbers"
        });

那么,我该如何添加该链接?

2 个答案:

答案 0 :(得分:0)

修改你的文件&#34; rep / cm.php?pm&#34;返回一个已经包含链接而不是页面ID号的不同json数组。

这应该是你的json输出:

{"draw": 1, "recordsTotal": 2, "recordsFiltered": 2, "data": [["2014-08-01","<a href=\"foo.php?id=34\">34</a>","84"],["2014-08-02","<a href=\"foo.php?id=36\">36</a>","61"]]}

答案 1 :(得分:0)

我认为您可以将aoColumnDefsmDatamRender一起使用DataTAbles。  mDatamRender允许操作数据进行显示,而不会更改表格的基础数据。

$('#tr1').dataTable({
            "processing": true,
            "bServerSide": false,
            "sAjaxSource": "rep/cm.php?pm",
            "sServerMethod": "GET",
            "wPaginationType": "full_numbers",
            "aoColumnDefs": [
                { "aTargets": [1], "mData":1,
                   "mRender": function ( data, type, full ) {
                     return '<a href="foo.php?id='+ data +'">'+ data + '</a>';
                   }},
            ]
        });