在laravel 5.3中创建ajax搜索

芬修斯·阿里托南(Fensius Aritonang)

这是视图代码

{!! Form::open(['method'=>'GET','url'=>'blog','class'=>'navbar-form navbar-left','role'=>'search']) !!}
        <div class="input-group custom-search-form">
            <input type="text" name="search" class="form-control">
            <span class="input-group-btn">
                <button type="submit" class="btn btn-default-sm">
                    <i class="fa fa-search"></i>
                </button>
            </span>
        </div>
        {!! Form::close() !!}

这是控制器代码

public function index(){
  // // we need to show all data from "blog" table
  // $blogs = Blog::all();
  // // show data to our view
  // return view('blog.index',['blogs' => $blogs]);

  $search = \Request::get('search');
  $blogs = Blog::where('title','like','%'.$search.'%')->orderBy('id')->paginate(6);
  return view('blog.index',['blogs' => $blogs]);
}

如何将此代码升级到ajax?

巴拉·艾亚什(Bara'ayyash)

您可以使用laravel提供可搜索特征,它将立即为您完成所有工作!

您需要做的就是将这条线添加到模型中

use Searchable;

在控制器中,您可以执行以下操作

$orders = Blog::search($search)->orderBy('id')->paginate(6);

对于Ajax请求..您可以使用jQuery来做到这一点:

$.get( "/?search="+ $( ".query" ).text(), function( data ) {
    $( ".result" ).html( data );
    alert( "Load was performed." );
});

您需要为HTML中的查询文本字段分配ID,以便可以使用jQuery检索它。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章