Javascript 用ajax显示的简单方法?

Javascript 用ajax显示的简单方法?,javascript,jquery,sql,ajax,laravel,Javascript,Jquery,Sql,Ajax,Laravel,我在控制器中有6个功能,按ASC和DESC 3字段排序 职能: public function orderByIdAsc(){ $projects = DB::table('projects')->orderBy('id','asc')->get(); return view('cms.public.views.projects.menu', ['projects' => $projects]); } public func

我在控制器中有6个功能,按ASC和DESC 3字段排序

职能:

 public function orderByIdAsc(){
        $projects = DB::table('projects')->orderBy('id','asc')->get();
        return view('cms.public.views.projects.menu', ['projects' => $projects]); 

    }
    public function orderByIdDesc(){
        $projects = DB::table('projects')->orderBy('id','desc')->get();
        return view('cms.public.views.projects.menu', ['projects' => $projects]); 
    }
    public function orderByOrderAsc(){
        $projects = DB::table('projects')->orderBy('order','asc')->get();
        return view('cms.public.views.projects.menu', ['projects' => $projects]); 
    }
    public function orderByOrderDesc(){
        $projects = DB::table('projects')->orderBy('order','desc')->get();
        return view('cms.public.views.projects.menu', ['projects' => $projects]); 
    }
    public function orderByPublicAsc(){
        $projects = DB::table('projects')->orderBy('public','asc')->get();
        return view('cms.public.views.projects.menu', ['projects' => $projects]); 
    }
    public function orderByPublicDesc(){
        $projects = DB::table('projects')->orderBy('public','desc')->get();
        return view('cms.public.views.projects.menu', ['projects' => $projects]); 
    } 
还有她的6条路线:

Route::prefix('admin')->group(function () {

    Route::get('project/orderByIdAsc', ['uses' => 'AdminController@orderByIdAsc', 'as' => 'admin.projects.orderByIdAsc']);
        Route::get('project/orderByIdDesc', ['uses' => 'AdminController@orderByIdDesc', 'as' => 'admin.projects.orderByIdDesc']);
        Route::get('project/orderByOrderAsc', ['uses' => 'AdminController@orderByOrderAsc', 'as' => 'admin.projects.orderByOrderAsc']);
        Route::get('project/orderByOrderDesc', ['uses' => 'AdminController@orderByOrderDesc', 'as' => 'admin.projects.orderByOrderDesc']);
        Route::get('project/orderByPublicAsc', ['uses' => 'AdminController@orderByPublicAsc', 'as' => 'admin.projects.orderByPublicAsc']);
        Route::get('project/orderByPublicDesc', ['uses' => 'AdminController@orderByPublicDesc', 'as' => 'admin.projects.orderByPublicDesc']);
});
目前,我在这里调用函数:

<th><a href="{{ route('admin.projects.orderByIdAsc')}}"><span class="glyphicon glyphicon-arrow-up" id="orderByIdAsc"></span></a>Id<a href="{{ route('admin.projects.orderByIdDesc')}}"><span class="glyphicon glyphicon-arrow-down" id="orderByIdDesc"></span></a></th>
<th>Slug</th>
<th><a href="{{ route('admin.projects.orderByOrderAsc')}}"><span class="glyphicon glyphicon-arrow-up" id="orderByOrderAsc"></span></a>Order<a href="{{ route('admin.projects.orderByOrderDesc')}}"><span class="glyphicon glyphicon-arrow-down" id="orderByOrderDesc"></span></a></th>
<th><a href="{{ route('admin.projects.orderByPublicAsc')}}"><span class="glyphicon glyphicon-arrow-up" id="orderByPublicAsc"></span></a>Public<a href="{{ route('admin.projects.orderByPublicDesc')}}"><span class="glyphicon glyphicon-arrow-down" id="orderByPublicDesc"></span></a></th>
Id
鼻涕虫
命令
公开的
使用ajax有没有比制作6个div并隐藏/显示它更简单的方法


非常感谢

在这种情况下,您有两种选择:

  • 第一个:使用路径参数
您可以将所有订购路线合并为一个:

Route::prefix('admin')->group(function () {

    Route::get('project/order/{field}/{order}', [
                'uses' => 'AdminController@order', 
                'as' => 'admin.projects.order'
            ]);

});
在您的
管理员控制器中

public function order($field, $order) 
{
    $projects = DB::table('projects')->orderBy($field,$order)->get();
    return view('cms.public.views.projects.menu') 
               ->withProjects($projects);
}
public function order(\Illuminate\Http\Request $request) 
{
    $order = $request->query('order');
    $field = $request->query('field');
    $projects = DB::table('projects')->orderBy($field,$order)->get();
    return view('cms.public.views.projects.menu') 
               ->withProjects($projects);
}
他认为:

<a href="{{ route('admin.projects.order', ['field' => 'id', 'order' => 'asc']) }}">Order by ID</a>
<a href="{{route('admin.projects.order', ['field' => 'id', 'order' => 'desc'])}}">Order by ID</a>
在您的
管理员控制器中

public function order($field, $order) 
{
    $projects = DB::table('projects')->orderBy($field,$order)->get();
    return view('cms.public.views.projects.menu') 
               ->withProjects($projects);
}
public function order(\Illuminate\Http\Request $request) 
{
    $order = $request->query('order');
    $field = $request->query('field');
    $projects = DB::table('projects')->orderBy($field,$order)->get();
    return view('cms.public.views.projects.menu') 
               ->withProjects($projects);
}
并且认为:

<a href="{{ route('admin.projects.order', ['field' => 'id', 'order' => 'asc']) }}">Order by ID</a>
<a href="{{route('admin.projects.order', ['field' => 'id', 'order' => 'desc'])}}">Order by ID</a>


所有这些是否返回相同的数据,只是顺序不同?那么您的页面一遍又一遍地请求相同的数据?是的,有一种更简单的方法。请求数据一次,并根据需要在JavaScript中对其进行排序。还是你在问别的问题?其中一个选项是使用
Route::get('project/orderBy/{field\u name}/{asc\u desc}
并在请求中获取这些参数。这样,您只需要一个路由和一个方法。是的,相同的数据排序是否不同。您能告诉我如何使用JS吗?谢谢,洛蒂将在Milancheda试用它,给我5分钟的时间,在浏览器中使用javascript对表进行排序。比重新加载pa更方便用户geHi朋友,我想我真的需要你的帮助@Maraboc我们能谈谈吗?嗨@Lluíspugferer,我在这里:)有什么问题吗?