首页 > 解决方案 > 如何使用 laravel 数据表将参数传递给控制器​​?

问题描述

我需要通过 laravel 数据表(即 yajra 数据表)将 id 传递给我的控制器函数,我需要在我的函数中接收 id 以获取数据,但它根本不发布。我尝试了很多方法,但没有运气

下面是我的代码,

jQuery,

$(function() {
      var id = "<?php echo $id;?>";
      // alert(id);
      var table = $('#data-table').DataTable({
          processing: true,
          serverSide: true,
          searchable:true,
          ajax: "{{ route('vendor.getOperationTimes') }}",
          // type:"GET",
          // data: {
          //   "_token": $('meta[name="csrf-token"').attr('content'),
          //   "id": id
          // },
          columns: [{
                    data: 'DT_RowIndex',
                    name: 'DT_RowIndex'
                },
              {
                  data: 'name',
                  name: 'name'
              },
              {
                  data: 'day',
                  name: 'day'
              },
              {
                  data: 'start_time',
                  name: 'start_time'
              },
              {
                  data: 'end_time',
                  name: 'end_time'
              },
              {
                  data: 'action',
                  name: 'action',
                  orderable: false,
                  searchable: false
              },
          ]
      });

控制器功能,

public function getOperationTimes(Request $request)
    {
        
        if ($request->ajax()) {
            $station_id = $request['id'];

            // echo $station_id;exit;
            $station = new Station();
            $getData = $station->getOperationTimes($station_id);
            return Datatables::of($getData)
                ->addIndexColumn()
                ->addColumn('action', function($row){
                    $btn = '<a href=/eCharge/public/vendor/getOperationTime/<?php echo $getData->id;?>" class="delete btn btn-danger">Edit</a> ';
                    return $btn;
                })
                ->rawColumns(['action'])
                ->make(true);
        }

路线,

 Route::get('getOperationTimes',[VendorStationController::class, 'getOperationTimes'])->name('getOperationTimes');

请尽快帮我一个人

标签: phpajaxlaravel

解决方案


Route::get('getOperationTimes/{id}')

ajax: "{{ route('vendor.getOperationTimes', ['id' => id]) }}",

你可以试试上面的代码。


推荐阅读