0

我使用 laravel 5 和 Prime UI 中的自动完成功能:

  $(function() {
  $('#remote').puiautocomplete({  
        effect: 'fade',  
        effectSpeed: 'fast',  
        completeSource:function(request, response) {  
            $.ajax({  
                type: "GET",  
                url: "{{ URL::to('search/autocomplete') }}",  
                data: {query: request.query},  
                dataType: "json",  
                context: this,  
                success: function(data) {  
                    response.call(this, data);  
                }  
            });  
        }  
    });  

输入字段:

  <input id="remote" name="remote" type="text"/>  

通过给定的 URL 调用以下函数:

  public function autocomplete(Request $request){
    $term = $request->input('remote');

   $results = array();
   $queries = DB::table('persons')
                    ->where('name', 'LIKE', '%' . $term . '%')
                    ->take(5)->get();
    foreach ($queries as $person) {

        $results[] = [ 'value' => $person->id, 'label' => $person->name];

    }

    return response()->json($results);
}

问题是,例如,当我的数据库中有 3 个名为 Tom、Peter、Frank 的人时,然后通过在输入文本字段中键入“FR”,所有 3 个人都会显示以供选择。通过主要的 ui 组件,字母“FR”被高亮显示为找到。但在这种情况下,只有 Frank 应该是可见的以供选择。

有什么想法可能是错的吗?谢谢

4

0 回答 0