【发布时间】:2016-11-17 17:15:43
【问题描述】:
所以我一直在搞乱 Datatables.js,但我似乎无法用结果填充它。所以我有一个返回以下 JSON 的 Java servlet:
[{"fileName":"report (1).xlsx","fileSize":"82 KB","fileDate":"07/13/2016 15:19:43"},{"fileName":"report (2).xlsx","fileSize":"11 KB","fileDate":"07/07/2016 11:35:47"},{"fileName":"report (3).xlsx","fileSize":"11 KB","fileDate":"07/07/2016 11:35:47"},{"fileName":"report (4).xlsx","fileSize":"9 KB","fileDate":"07/13/2016 15:20:54"}]
我的 HTML 看起来像这样:
<table id="example" class="display" cellspacing="0" width="100%">
<thead>
<tr>
<th>Name</th>
<th>Size</th>
<th>Date</th>
</tr>
</thead>
</table>
我的 JS 看起来像:
$(document).ready(function() {
var oTable = $('#example').dataTable( {
"processing": true,
"ajax": {
"url": "/TR3Application/FileViewerServlet",
"dataSrc": "",
"type": "GET"
}
} );
});
当我只是调用 AJAX 并记录它返回的内容时,我会从 servlet 获得完全相同的 JSON 响应。但是数据表似乎没有填充任何东西。我做错了什么?
【问题讨论】:
-
您需要在 HTML 中添加一个 标记,以便填充数据表。只需添加一个空的。你需要
columns: [ { data: 'fileName' }, { data: 'fileSize' }, { data: 'fileDate' }]吗?另外,不应该是$('#example').DataTable(...)(大写D)吗?@smarx 实际上,DataTable和dataTable都可以接受。根据您需要 jQuery API 还是 DataTables API,它们的用例略有不同。见this forum post我已经尝试了所有的解决方案,但我似乎无法让它发挥作用。我看到的一件事是,在 XHR 视图中,我根本看不到对 servlet 的任何调用。我正在关注确切的文档,但我不知道发生了什么。
标签: javascript jquery servlets datatables