Данные не отображаются в данных Spring MVC - PullRequest
0 голосов
/ 02 декабря 2018

Я пытаюсь получить данные из Spring MVC и показать их в таблицах данных.На веб-странице данные отображают обработку.Я попытался утешить мое значение, и в консоли мои массивы показывают.Кто-нибудь может помочь?

Таблица JSP:

<div>
    <table id="myTable" class="table table-bordered table-striped">
        <thead>
            <tr>
                <th class="col-sm-1">Department Id</th>
                <th class="col-sm-3">Department Name</th>
            </tr>
        </thead>
    </table>
</div>

Код JavaScript:

<script>
 $(document).ready(function () {
       table = $("#myTable").DataTable({
            "processing": true, // for show progress bar
            "serverSide": true, // for process server side
            "filter": false, // this is for disable filter (search box)
            "orderMulti": false, // for disable multiple column at once
            "ajax": {
                "url": "/com-employee-record/department/listDataTable.json",
                "type": "POST",
                "datatype": "json",
                "success" : function(data, i){
                    console.log(data[0]);


                }
            },
               "columns" : [
                    { "data": "department_id"},
                    { "data": "department_name"}
            ]   
        });
    });
</script>

Код контроллера:

@RequestMapping(value = "/listDataTable.json", method = RequestMethod.POST, headers = "Accept=application/json")
@ResponseBody
public List<Department> dataTable(HttpServletRequest request) {
    return departmentService.getDepartments();
}

Вот что показывает моя консоль:

{department_id: 1, department_name: "Information Technology"}

Ответы [ 2 ]

0 голосов
/ 03 декабря 2018

Кажется, все в порядке, просто замените ajax часть вашего кода на этот

        "ajax": {
            "url": "/com-employee-record/department/listDataTable.json",
            "type": "POST",
            "contentType": "application/json",
            "dataSrc" : "[]"
        },

dataSrc, отсутствующий в вашем коде.Не нужно иметь блок успеха.

0 голосов
/ 03 декабря 2018

Я думаю, вам нужно использовать параметр:

 "dataSrc": ""

, потому что ваш ответ API не имеет свойства js верхнего уровня, называемого "data".

Код ниже работает.

<script src="https://cdn.datatables.net/v/dt/jq-3.3.1/dt-1.10.18/datatables.min.js"></script>

<script>
  $(document).ready(function() {
    $('#example3').DataTable({
      "ajax": {
        "type": "GET",
        "url": 'https://jsonplaceholder.typicode.com/todos',
        "contentType": 'application/json; charset=utf-8',
        "dataSrc": "",
      },
      "columns": [
        {
          "data": "id"
        },
        {
          "data": "title"
        }
      ]
    });
  });
</script>

<table id="example3" class="display" style="width:100%">

</table>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...