Мой результат автозаполнения показывает нечитаемые результаты:
{"_ query": "Hein", "name": "Heineken"}
Вместо этого приходят только слово Heineken.
Ниже моего кода 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"}]