Laravel自动完成搜索问题

时间:2017-08-21 14:12:36

标签: php laravel laravel-5 autocomplete laravel-5.1

我正在开设具有类别页面的在线商店,并且根据所选择的类别显示产品页面。 我想创建一个自动填充搜索字段,该字段将在仅显示产品的两个页面中可用,一旦与搜索匹配。

我应该在哪里创建我的搜索字段?我的路线应该如何?我应该返回什么视图?我非常感谢创建自动完成搜索字段的更多指令。谢谢

1 个答案:

答案 0 :(得分:0)

如果您在两个页面中创建搜索字段,则代码应如下所示:

搜索字段:

<input type="text" name="search" value="" id="search">

您的路线:

Route::post('/search', 'SomeController@searchFunction')->name('search');

以及您在控制器中的搜索功能

class SomeController extends Controller
{
    public function searchFunction(Request $request){
        return CategoryClass::where('name', 'like', '%'.$request->search.'%')->get();
    }

}

然后你可以用ajax调用创建一个main.js文件示例并将其包含在两个刀片页面中

ajax调用可以是这样的:

$("#search").keyup(function() {
    $.ajax({
        url: "{{ route('search') }}",
        type: "post",
        data: $("search").serialize(),
        success: function (data) {
            //do something
        },
        error: function (data) {
            console.log(data)
        }
    });
});

希望这有帮助