使用AJAX请求在laravel中进行实时搜索


Live search in laravel with AJAX request

如何使用ajax请求在我的应用程序中创建一个搜索引擎,将搜索到的项目显示在表上?

这就是我的控制器中的内容,它在每次加载时都会运行,并且需要一整页加载才能显示新结果。

public function search() {
    $q           = Input::get('searchKeyWords');
    $users       = DB::table('users');
        $results = $users->where('name', 'LIKE', '%'. $q .'%')
        ->orWhere('email', 'LIKE', '%'. $q .'%')
        ->orWhere('password', 'LIKE', '%'. $q .'%')
        ->get();
    return View::make('users.search')->with('users', $results);
}

我希望从一个完整的页面加载切换到只发出AJAX请求来获取数据,这样页面就不必完成重新加载。如何才能做到这一点?

我认为pjax可以是很好的解决方案。您可以通过ajax请求加载内容。URL也将被更改,但页面本身不会被重新加载。

以下链接可能会对您有所帮助。

简单的pjaxJS库https://github.com/defunkt/jquery-pjax

支持laravel的pjaxhttps://github.com/vtalbot/pjax