Datatables - параметр 0 для потока 0

$('#datatable').DataTable({
            "processing": true,
            "serverSide": true,
            "ajax": {
                "url": "../../WebPost/AjaxPinToFolderSearch",
                "data": function (d) {
                    d.postID = globalPinToFolderSearchID;
                },
                "columns": [
                    { "data": "Folder", "defaultContent": "Value Not Received" },
                    { "data": "Pinned", "defaultContent": "Value Not Received" },
                    { "data": "StartDate", "defaultContent": "Value Not Received" },
                    { "data": "EndDate", "defaultContent": "Value Not Received" }
                ]
            }
        });

С примером ответа (взят из инструментов разработчика Network Response):

{"data":[{"Folder":"Home/Test One/Frogger","Pinned":false,"StartDate":"\/Date(18000000)\/","EndDate":"\/Date(18000000)\/"}]}

Вот пример, показывающий сообщение об ошибке: http://lektrikpuke-001-site1.ctempurl.com/

Datatables, кажется, работает правильно в том смысле, что он запрашивает и получает данные. Появляется ошибка, в таблице отображаются пустые строки (отзывчиво - 1 строка данных = 1 строка в таблице, 10 строк данных = 10 пустых строк в таблице). Я понимаю, что это общий вопрос, но я не могу понять, что не так. Как примечание, бэкэнд является C#.

1 ответ

Решение

Незначительная проблема: опция столбцов не должна быть частью опций ajax. Уберите его, и он будет работать без ошибок, поскольку DataTable теперь получит правильные столбцы (что в вашем случае было null). Я проверил это в консоли, и это сработало. Дайте мне знать, если это не сработает для вас.

Другие вопросы по тегам