Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在laravel中传递datatable函数中的route参数_Javascript_Jquery_Laravel_Datatables - Fatal编程技术网

Javascript 如何在laravel中传递datatable函数中的route参数

Javascript 如何在laravel中传递datatable函数中的route参数,javascript,jquery,laravel,datatables,Javascript,Jquery,Laravel,Datatables,这是我的第一篇文章,请原谅。 我有一个名为messdata.blade.php的页面。我想为每个术语id更新此页面的数据表 我的路线是这样的 /管理员/信息数据/1, /管理员/信息数据/2, /管理员/信息数据/3 这里1,2,3是术语id。我想在数据表single中显示messdata 但是,尽管我更改了id,但我的数据表仍停留在第一个id上,并且没有更改 这是我的控制器代码 public $termid=1; public function showmess($id)

这是我的第一篇文章,请原谅。 我有一个名为messdata.blade.php的页面。我想为每个术语id更新此页面的数据表

我的路线是这样的

/管理员/信息数据/1,
/管理员/信息数据/2,
/管理员/信息数据/3

这里1,2,3是术语id。我想在数据表single中显示messdata

但是,尽管我更改了id,但我的数据表仍停留在第一个id上,并且没有更改

这是我的控制器代码

    public $termid=1;
    public function showmess($id)
    {
        $this->termid=$id;
        return view('foradmin.mess.messdata');
    }

    public function showmessdata()
    {
        $users= DB::select('select * from messes where  termno = :termno', ['termno' => $this->termid]);

        return Datatables::of($users)
        ->addColumn('action', function ($user) {
            return "<a href='/admin/perterminfo/$user->id' class='btn btn-xs btn-primary'></i><span class=\"glyphicon glyphicon-folder-open\"></span> OPEN</a>";
        })
        ->make(true);
    }

您可以使用$id=Request::segment(3)从url获取id

欢迎使用StackOverflow。请看一下添加代码。现在还不清楚你到底想做什么。先生,现在我已经给出了我的代码。请看一看。我不清楚你的要求,但我想你正在做的是不能做的。您正在更改某个路由的id,然后尝试从另一个路由捕获与该id相关的数据!我认为php不是这样工作的,当您点击第二条路径时,整个脚本都会运行,并且当您设置
$termid=1
时,它应该始终显示id 1的数据,并且永远不会更改。必须使id更改在请求之间保持不变,才能正确显示数据。我认为你要做的事情可以通过第二条路径直接完成,只需在其中添加id参数。每个术语都有几个messe。我想为每个术语id更新数据表。对于每个术语id,数据表将显示不同的mess数据。请参见上面添加的图片。段(3)是什么,请解释?检索请求URI段$segment=Request::segment(段号);公共函数showmessdata(){$id=Request::segment(3);$users=DB::select('select*from messes其中termno=:termno',['termno'=>$id]);我这样添加了。但是表中显示“表中没有可用数据”。
    <script>
        var table;
        $(function() {
            table=$('#users-table').DataTable({
                processing: true,
                serverSide: true,
                ajax: '{!! route('admin.messdatashow') !!}',
                columns: [
                    {data:'id',name:'id',searchable: false},
                    {data: 'messno', name: 'messno' },
                    {data: 'startat', name: 'startat',searchable: false },
                    {data: 'finishat', name: 'finishat',searchable: false },
                    {data:'messfee',name:'messfee', searchable: false},
                    {data:'extrafee',name:'extrafee', searchable: false},
                    {data:'fine',name:'fine',searchable: false},
                    {data: 'action', name: 'action', orderable: false, searchable: false},
                ]
            });
        });
    </script>
Route::get('admin/messdata/{id}','MessController@showmess')->name('admin.messdata');
Route::get('admin/messdatashow','MessController@showmessdata')->name('admin.messdatashow');