php - laravel 7中的Ajax数据表
问题描述
如何在 laravel 中使用 ajax 的数据表。请提供解决方案
响应来自服务器但未应用于数据表
解决方案
在 javascript 文件中
$(document).ready(function ()
{
var apptmntstatus = $("#status").val();
function emergency_passportapps()
{
var table = $('#emergency_passportapps').DataTable({
"ordering": true,
"processing": true,
"serverSide": true,
"bDestroy": true,
"order": [],
"language": {
"paginate": {
"previous": '<i class="fa fa-arrow-left" aria-hidden="true"></i>',
"next": '<i class="fa fa-arrow-right" aria-hidden="true"></i>'
}
},
"ajax":
{
"url": baseurl+"emergency_passportapps",
"type": "POST",
"data":
{
"_token": $('#token').val(),
"emg_pass_date": $("#emg_pass_date").val(),
},
},
"columns": [
{ "data": "id" },
{ "data": "applicant_name" },
{ "data": "applicant_passport_no" },
{ "data": "serviceapplied" },
{ "data": "description_emg" },
{ "data": "view" },
]
});
}
emergency_passportapps();
$("#emg_pass_search").click(function(e){
e.preventDefault();
emergency_passportapps();
});
});
在控制器...
ini_set('memory_limit','2048M');
$columns = array(0 =>'id',
1 =>'appmnt_token',
2 =>'appmnt_counter',
3=> 'appmnt_date',
4=> 'appmnt_time',
5=> 'applicant_name',
6=> 'applicant_passport_no',
7=> 'appointment_status',
8=> 'action',
9=> 'view'
);
$length = (isset($_POST['length']) && $_POST['length'] != '') ? $_POST['length'] : '10';
$start = (isset($_POST['start']) && $_POST['start'] != '') ? $_POST['start'] : '0';
$searchablVal = $_POST['search']['value'];
$ordercolumnName = $orderDir = null;
$date = null;
$datecond = null;
$apptmntstatus = null;
$start = $request->input('start');
$limit = $request->input('length');
if($limit !="")
{
$limit = $request->input('length');
}else
{
$limit = 10;
}
$start = $request->input('start');
$search = $request->input('search.value');
$dir = $request->input('order.0.dir');
$where = ['emergency_passport'=>'1'];
if($request->emg_pass_date !="")
{
$emg_pass_date = date('Y-m-d',strtotime($request->emg_pass_date));
$where['appmnt_date']=$emg_pass_date;
}
if($search =="")
{
$Querydata = $totalData=DB::table('appointment_register')->where($where);
$TotaldataCount= $totalData->count();
$Querydata = $Querydata->offset($start);
$Querydata = $Querydata->limit($limit,$dir);
$Querydata = $Querydata->orderBy('id',"DESC");
$Querydata = $Querydata->get();
$QuerydataTotal = $Querydata->count();
}else
{
$Querydata = $totalData= DB::table('appointment_register')->where($where);
$Querydata = $Querydata->where('apptmnt_unique_id', 'LIKE',"%{$search}%");
$Querydata = $Querydata->orWhere('applicant_name', 'LIKE',"%{$search}%");
$Querydata = $Querydata->where('emergency_passport','1');
$Querydata = $Querydata->orWhere('applicant_passport_no', 'LIKE',"%{$search}%");
$Querydata = $Querydata->where('emergency_passport','1');
$Querydata = $Querydata->orWhere('serviceapplied', 'LIKE',"%{$search}%");
$Querydata = $Querydata->where('emergency_passport','1');
$Querydata = $Querydata->offset($start);
$Querydata = $Querydata->limit($limit,$dir);
$Querydata = $Querydata->orderBy('id',"DESC");
$Querydata = $Querydata->get();
$TotaldataCount=$QuerydataTotal = $Querydata->count();
}
$datares = [];
$i = $start + 1;
foreach ($Querydata as $val)
{
$nestedData = array();
$appointment_action = '';
$statusbtn ='';
$nestedData['id'] = $i;
$nestedData['applicant_name'] = $val->applicant_name;
$nestedData['applicant_passport_no'] = $val->applicant_passport_no;
$nestedData['serviceapplied'] = $val->serviceapplied;
$nestedData['description_emg'] = $val->description_emg;
$nestedData['view']= '<a href="emergency_appointment_view/'.$val->id.'" class="view" ><span class="glyphicon glyphicon-pencil apptmtview" data-id='.$val->id.'" aria-hidden="true" title="View"></span></a>';
$datares[] = $nestedData;
$i++;
}
$output = array(
"draw" => $_POST['draw'],
"recordsTotal" => $TotaldataCount,
"recordsFiltered" => $TotaldataCount,
"data" => $datares,
);
echo json_encode($output);
推荐阅读
- javascript - 使用jquery从数组中获取唯一数据
- c++ - 如何将 StretchDIBits 的原点设置为左上角?
- node.js - 即使订购者关闭,Hyperledger Fabric nodejs sdk 也会返回成功消息
- openshift - 如何授予用户在 OpenShift Online Pro 中标记图像的能力?
- rpa - RPA Automation Anywhere 日期格式
- python - 列表之间的组合忽略和列表中的元素并忽略对的排序
- anylogic - 一种代理类型的当前和“过去”代理的人口级别统计数据
- javascript - 我怎么知道一个对象是否“可以做”某事
- c# - IEnumerable 到带空格的字符串
- java-8 - weblogic.management.DeploymentException:java.lang.NoSuchMethodError:javax.persistence.spi.PersistenceUnitInfo.getValidationMode()