jQuery数据表中的json响应

时间:2016-03-31 07:35:40

标签: jquery datatables

我正在尝试将json响应放在jquery数据表中,但在数据表中它没有显示任何响应。

这是我的代码

<span style="display:inline-block;">30</span>

这是回复

<html>
<head>
  <link rel="stylesheet" type="text/css" href="http://ajax.aspnetcdn.com/ajax/jquery.dataTables/1.9.4/css/jquery.dataTables.css">
</head>
<body>
 <table id="example">
  <thead>
    <tr><th class="site_name">Name</th><th>Url </th><th>Type</th><th>Last modified</th></tr>
  </thead>
  <tbody>
  </tbody>
</table>

  <script type="text/javascript" charset="utf8" src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.8.2.min.js"></script>
  <script type="text/javascript" charset="utf8" src="http://ajax.aspnetcdn.com/ajax/jquery.dataTables/1.9.4/jquery.dataTables.min.js"></script>
  <script>
$("#example").dataTable({
  "processing": true,
  "serverSide": true,
  "sAjaxSource": "http://url",
  "aoColumns": [{
    "mData":"name",
    "sTitle": "site name"
  },{
    "mData": "createdBy"

  },{
    "mData": "createdBySafeId"
  },{
    "mData": "lastUpdated"
  },{
    "mData":"tag"
  }]
});
  </script>

<!--   <textarea rows="4" cols="50">
example 
</textarea> -->
</body>
</html>

当我试图在数据表中显示响应时..它显示空行。感谢

2 个答案:

答案 0 :(得分:0)

您已使用"serverSide": true启用了服务器端处理模式,但您的响应没有适合该模式的结构。您还需要使用"sAjaxDataProp": "",因为您的响应是一个普通数组。

请改用以下代码:

$("#example").dataTable({
  "sAjaxSource": "http://url",
  "sAjaxDataProp": "",
  "aoColumns": [{
    "mData":"name",
    "sTitle": "site name"
  },{
    "mData": "createdBy"

  },{
    "mData": "createdBySafeId"
  },{
    "mData": "lastUpdated"
  },{
    "mData":"tag"
  }]
});

答案 1 :(得分:0)

请使用更新版本的DataTables!除此之外,您还需要向我们提供有关您希望如何显示标签的更多信息。在this example我用逗号加入他们,但世界是你的龙虾。

基本上,你想在tags字段上使用渲染函数:

{
  "data": "tag",
  "render": function(d) {
    return d.join(", ")
  }
}