首页 > 解决方案 > 试图过滤品牌名称但它不起作用

问题描述

我正在尝试使用搜索栏过滤品牌,但我不知道要过滤的 ajax 代码

控制器

$brands = (request()->session()->get('business.enable_brand') == 1) ? Brands::where('business_id', $business_id)
                    ->pluck('name', 'id')
                     ->prepend(__('lang_v1.all_brands'), 'all') : false;

阿贾克斯

$(function () {

    var minlength = 3;

    $("#searchbrands").keyup(function () {
        var that = this,
        value = $(this).val();

         if (value.length >= minlength ) {
            if (searchRequest != null) 
                searchRequest.abort();
            searchRequest = $.ajax({

            });
        }
     });
 });

看法

<input type="search" id="searchbrands"  name="" class="form-control" placeholder="Type brand here. . . ">

            @if(!empty($brands))

                @foreach($brands as $id => $brand)
                <a class="fontsizs text-uppercase" id="product_brand" onclick="brandfilter({{ $id }});" href="javascript:void(0)" >{{$brand}}</a>

                @endforeach
            @endif

标签: phpajaxlaravel

解决方案


基本上,您只需要将搜索到的值从 ajax 传递到控制器,然后在您的控制器中执行 db 查询以进行搜索。


推荐阅读