2016-07-14 2 views
0

Так что я возился с Datatables.js, но я не могу заполнить его результатами. Таким образом, у меня есть сервлет Java, который возвращает следующий JSON:Datatables.js: Как читать в JSON

[{"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 и журнал что он возвращает, я получаю точно такой же ответ JSON от сервлета. Но Datatables, кажется, ничего не заселяют. Что я делаю не так?

+1

В таблице данных для таблицы данных необходимо использовать тег . Просто добавьте пустой. –

+1

Вам нужны колонки: [{data: 'fileName'}, {data: 'fileSize'}, {data: 'fileDate'}] '? – smarx

+0

Также не должно быть '$ ('# example'). DataTable (...)' (capital D)? – smarx

ответ

0

Необходимо, чтобы dataTables знала колонки - Json mapping.

<tr> 
     <th data-data="fileName">Name</th> 
     <th data-data="fileSize">Size</th> 
     <th data-data="fileDate">Date</th> 
    </tr> 
+0

Лучший способ сообщить, что данные в столбцах - это то, что @smarx упомянул в своем комментарии к вопросу с опцией 'columns'. –