アップデート:
私はついにこの問題の解決策を見つけました。私と同じ問題に直面している場合は、このリンクにアクセスしてみてください
JqueryDataTablesを CodeIgniterIgnited-Datatablesライブラリと統合したいときに問題が発生します
「GET」であるデフォルトのDataTablessServerMethodプロパティを使用すると、phpからのデータでjson応答を取得しました。ただし、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"}
sServerMethodPOSTを使用した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();
}