如何将ID从ajax传递到控制器 - Laravel&Ajax

目前,我在显示页面上,我正在运行功能show在我的控制器中,所以我的网址在url地址栏中显示为dashboard/1/people。现在,当我点击一个人时,它会路由到一个不同的页面,这就是调用getPeople的地方。如何将ID从ajax传递到控制器 - Laravel&Ajax

我怎样才能得到我点击的人的身份证号码是1来自scripts中的ajax请求并传递给我的控制器?

PS:目前,我已经硬编码在Ajax请求1但我希望它是动态的,请

我要如何做?

脚本

datatable = $('#table').DataTable({ 

"ajax": "{{ route('dashboard/1/people') }}",

"columns": [

{data: 'check', name: 'check'},

],

控制器

public function show($id) 

{

$class = Class::whereId($id)->first();

return view('show');

}

public function getPeople($id)

{

$get_id = $id;

$class = Class::whereId($get_id)->first();

$people = $class->peoples()->get();

return Datatables::of($people)->addColumn('action', function ($ppl) {

//return

})->make(true);

}

回答:

这应该工作:

在你getPeople方法商店的ID在session变量:

public function getPeople($id) 

{

$get_id = $id;

//using session helper method

session(['show_id' => $id]);

$class = Class::whereId($get_id)->first();

$people = $class->peoples()->get();

return Datatables::of($people)->addColumn('action', function ($ppl) {

//return

})->make(true);

}

,然后访问它在你的Ajax代码:

datatable = $('#table').DataTable({ 

"ajax": "{{ route('dashboard/'.session('show_id').'/people') }}",

"columns": [

{data: 'check', name: 'check'},

],

回答:

的DataTable Ajax允许哟传递对象格式额外的参数,就像这样:

datatable = $('#table').DataTable({  

"ajax": {

"type": "GET",

data:{id: my_id_var},

"url": "my_route"

}

}

而在你的功能只是获取请求变种

public function getPeople(Request $request){ 

$get_id = $request->id;

$class = Class::whereId($get_id)->first();

$people = $class->peoples()->get();

return Datatables::of($people)->addColumn('action', function ($ppl) {

//return

})->make(true);

}

更多的信息在Sorce Page

以上是 如何将ID从ajax传递到控制器 - Laravel&Ajax 的全部内容, 来源链接: utcz.com/qa/265600.html

回到顶部