2017-01-02 2 views
0

Я работаю над проектом с использованием codeigniter. Я пытаюсь использовать datatables для просмотра данных, получаемых ajax. вкладка сети показывает, что Аякс правильно возвращаемые значения, но функция помечена как 404, и я получаю эту ошибкуdatatables by ajax in codeignign issue

"DataTables warning: table id=data - Ajax error. For more information about this error, please see http://datatables.net/tn/7" 

Вот Аякс на вкладке сети

enter image description here

Я проверил реакцию и это верно. Я открыл АЯКС функцию следующим образом: domain.com/module/controller/merchantsTable и я получил правильные данные

{ "merchantsdata":[{"id":"6","email":"[email protected]"},{"id":"7","email":"[email protected]"}]} 

DataTables код [обновление: добавлены «обработка» и «ServerSide»]

<table id="data"> 
    <thead> 
    <tr> 
     <th>id</th> 
     <th>email</th> 
    </tr> 
    </thead> 
    <tfoot> 
    <tr> 
     <th>id</th> 
     <th>email</th> 
    </tr> 
    </tfoot> 
    <tbody> 

    </tbody> 
</table> 

//base_url refers to https://www.domain.com/ 

$(function() { 
    $('#data').DataTable({ 
     "processing": true, 
     "serverSide": true, 
     "ajax": "<?=base_url()?>merchants/admin_merchants/merchantsTable", 
     "columns": [ 
      { "merchantsdata": "id" }, 
      { "merchantsdata": "email"} 
     ], 
     "order":[0 , 'desc'], 
     "lengthMenu": [[20, 50, -1], [20, 50, "All"]] 
    }); 
}); 

Как решить эту проблему и заставить ее работать?

+0

Очевидно, что ответ на самом деле НЕ правильный. Ваши данные присутствуют, но Datatables требует дополнительных параметров для работы. Взгляните на [этот ответ SO] (http://stackoverflow.com/questions/26387356/codeigniter-with-datatables-ajax-populate) – markpsmith

+0

работал без изменения кода. Моя ошибка заключалась в другой папке в корне с именем «merchants», поэтому ajax не извлекал данные из пути маршрута codeigniter, а из папки в корне. Спасибо за вашу помощь –

ответ

0

изменение

<table id="data"> 
    <thead> 
    <tr> 
     <th>id</th> 
     <th>email</th> 
    </tr> 
    </thead> 
    <tbody> 

    </tbody> 
    <tfoot> 
    <tr> 
     <th>id</th> 
     <th>email</th> 
    </tr> 
    </tfoot> 
</table> 
0

Работали без изменения кода. Моя ошибка: в корне с именем «торговцы» была другая папка, поэтому ajax не извлекал данные из маршрута маршрута codeigniter (купеческий модуль), а из папки в корневом каталоге, что неправильно, поэтому я переименовал папку в корне, и она работал.