自动完成返回错误结果Bloohound e Typeahead

时间:2020-05-27 06:09:38

标签: php laravel typeahead.js bloodhound

我的自动填充结果显示不可读的结果:

{“ _ query”:“ Hein”,“ name”:“喜力”}

相反,只有喜力这个词。

在我的代码Javascript下面:

$(document).ready(function () {

    var produtos = new Bloodhound({

        datumTokenizer: Bloodhound.tokenizers.whitespace('nome'),
        queryTokenizer: Bloodhound.tokenizers.whitespace,
        remote:{
            url: '/ajaxProdutos?searchword=%QUERY%',
            wildcard: '%QUERY%'
        }

    });

    produtos.initialize();
    $("#search").on('click',function(){
        checkMailSearch();
    });  


    $("#bebida").typeahead({
        hint:true,
        highlight: true,
        minLength:1
    },{
        name: "Produtos",
        source:  produtos.ttAdapter()

    });      
});

HTML:

 <input type='text' name='bebida' id='bebida'class='form-control' placeholder="exemplo: Skol 350ml">

我的Laravel控制器功能:

    public function ajaxProdutos(Request $request){        

    $produto = DB::table('produto_model')->select('nome')->where('nome','like',$request->searchword.'%');
    $categoria = DB::table('categorias')->select('nome')->where('nome','like',$request->searchword.'%')->union($produto)->get();
    return $categoria;
}

我的JSON返回:

[{"nome":"Conhaque"},{"nome":"Colorado Appia 600ml"},{"nome":"Colorado Berth\u00f4 600ml"},{"nome":"Colorado Caium 600ml"},{"nome":"Colorado Demoiselle 600ml"},{"nome":"Colorado Eug\u00eania 600ml"},{"nome":"Colorado Guanabara 600ml"},{"nome":"Colorado Indica 6000ml"},{"nome":"Colorado Ithaca 600ml"},{"nome":"Colorado Ithaca Woode Aged 600ml"},{"nome":"Colorado Murica 600ml"}]

0 个答案:

没有答案