在laravel 5.3中创建ajax搜索

This is views code

{!! 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() !!}

this is controllers code

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]);
}

How can I upgrade this code to ajax?

You can use the searchable trait provided from laravel, it will do all the job for you out of the box !

All you need to do is adding this line to the model

use Searchable;

in the controller, you do something like this

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

and for Ajax request.. you can do it using jQuery :

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

You need to assign id for query textfield in HTML so you can retrieve it using jQuery