Я использую CodeIgniter и таблицу данных. Я могу отображать записи из базы данных в списке, когда записи доступны.
но когда нет доступных записей, я получаю сообщение об ошибке JSON.
Предупреждение DataTables: table id = tableId - Неверный ответ JSON. Для получения дополнительной информации об этой ошибке см. http://datatables.net/tn/1
Я попробовал свой код
Контроллер
public function MembershipList(){
$draw = intval($this->input->get("draw"));
$start = intval($this->input->get("start"));
$length = intval($this->input->get("length"));
$books=$this->Fees_model->MembershipList();
$draw = 1;
$recordsTotal = count($books);
$recordsFiltered = count($books);
$n=1;
$data = array();
if(!empty($books)){
foreach($books as $row)
{
$action='<button type="button" name="update" id="'.$row->clubMembershipFees_id.'" class="btn btn-warning btn-xs update">Edit</button>';
$data[] = array(
"Sr_No" => $n,
"Duration" => $row->Duration,
"PrimaryMember" => $row->PrimaryMember,
"action" => $action
);
$n++;
}
}
else{
echo "no data available";
}
$output = array(
"draw" => $draw,
"recordsTotal" => $recordsTotal,
"recordsFiltered" =>$recordsFiltered,
"data" => $data
);
echo json_encode($output);
exit;
}
Аякс
$('#Membershiplist').DataTable({
"processing":true,
//"serverSide":true,
"ordering": false,
"ajax":{
url:baseUrl+ "/controller_one/MembershipList",
type:"POST",
dataSrc: function (json) {
return json;
}
},
"columns": [
{"data":"Sr_No"},
{ "data": "Duration" },
{ "data": "PrimaryMember" },
{ "data": "action" }
]
//"emptyTable": "No record found",
});
Можете ли вы помочь мне, где я не прав? Я получаю ответ на вкладке сети "no data available{"draw":1,"recordsTotal":1,"recordsFiltered":1,"data":[]}"
После предложения @Shashidhara
console.log(json); output
{…}
data: (1) […]
0: {…}
Sr_No: 1
action: "<button type=\"button\" name=\"update\" id=\"1\" class=\"btn btn-warning btn-xs update\">Edit</button>"
Duration: "2019-2020"
PrimaryMember: "100"
<prototype>: Object { … }
length: 1
<prototype>: Array []
draw: 1
recordsFiltered: 1
recordsTotal: 1