2016-05-30 5 views
0

私は自分のlaravelアプリケーションで自動完全検索システムを実装しようとしました。私はすべてのcssとjsファイルを正しく保存しました。今、データベースの指定されたフィールドに一致するものを入力すると、内部にテキストがなくても小さなボックスが表示されます。何が問題ですか?ビューに応答データを渡すことができないのはなぜですか?Laravel jQuery ui autocompleteが応答データを正しく表示しない

ここは私のコントローラです。

public function autocomplete(Request $request){ 
     $term=$request->term; 
     $data=User::where('name','LIKE','%'.$term.'%')->take(10)->get(); 
     $result=array(); 
     foreach($data as $key=>$user){ 
     $result[]=['name'=>$user->name]; 

     } 

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

ここは私の見解です。

<?php include "/Assests_PHP/JS.php";?> 
<?php include "/Assests_PHP/CSS.php";?> 

<script src="https://code.jquery.com/ui/1.12.0-beta.1/jquery-ui.js"></script> 
<link rel="stylesheet" href="http://code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css" type="text/css"> 
<div class="row"> 
<div class="col-md-6 col-md-offset-3"> 
<section class="panel panel-default"> 
<header class="panel-heading"> 
<input type="text" name="name" id="searchname" class="form-control" placeholder="search user"/> 

</header> 
<div class="panel-body"> 

</div> 
</section> 
</div> 
</div> 
<script type="text/javascript"> 
$('#searchname').autocomplete({ 
    source:'{!!URL::route('autocomplete')!!}', 
    minlength:1, 
    autoFocus:true, 
    select:function(e,ui){ 

    alert(ui); 
    } 

}); 

答えて

0

あなたのオブジェクト構造は、オートコンプリートソースドキュメント

アレイあたりの期待デフォルトと一致しない問題

ものです:配列が可能にローカルデータに使用されます。

An array of strings: [ "Choice1", "Choice2" ] 
An array of objects with label and value properties: [ { label: "Choice1", value: "value1" }, ... ] 

labelプロパティが提案メニューに表示されている2つのサポート 形式があります。ユーザーが項目を選択したとき、値は と入力要素に挿入されます。 プロパティが1つだけ指定されている場合は、両方とも使用されます。たとえば、 に値のプロパティのみを指定すると、その値は ラベルとしても使用されます。

関連する問題