更新:
我终于找到了解决这个问题的方法。如果您遇到与我相同的问题,可以尝试访问此链接
想要将Jquery DataTables与 CodeIgniter Ignited-Datatables库集成时遇到问题
当我使用默认的 DataTables sServerMethod属性“GET”时,我得到了 json 响应,其中包含来自我的 php.ini 的数据。然而,由于 CodeIgniter 使用 post,我坚持加载服务器数据,尽管该函数返回正确的 json 输出。
所以我按照本指南将sServerMethod更改为“POST”。现在我不再坚持加载服务器数据,但我没有得到我需要的数据。
使用sServerMethod GET 的JSON 响应(获取正确的 json,但卡在加载图像中的服务器数据)
{
"sEcho": 0,
"iTotalRecords": 10,
"iTotalDisplayRecords": 10,
"aaData": [
[
"Munauwar",
"Syed",
"Mr",
"6012345678",
"0000-00-00",
"basikal"
],
[
"Mak",
"Je Wei",
"Mr",
"6012345678",
"0000-00-00",
"motor"
]
],
"sColumns": "first_name,last_name,salutation,number,birthday,group_name"}
使用sServerMethod POST的JSON 响应
{
"sEcho": 1,
"iTotalRecords": 10,
"iTotalDisplayRecords": 0,
"aaData": [],
"sColumns": "first_name,last_name,salutation,number,birthday,group_name"}
这是我的 JavaScript 代码
$('#table1').dataTable({
"bProcessing": true,
"bServerSide": true,
"sPaginationType": "bootstrap",
"sAjaxSource": config.base_url + "contact/popup_contact",
"sServerMethod": "POST"
});
我在联系人控制器中的功能
function popup_contact()
{
$this->datatables
->select('first_name,last_name,salutation,number,birthday,group_name')
->from('tb_contact')
->join('tb_contact_group', 'tb_contact.contact_group_id = tb_contact_group.contact_group_id');
echo $this->datatables->generate();
}