0

Jqueryウィジェットのオートコンプリートを使用しています。私のデータソースは、JSONデータを返すサーバーサイドスクリプトです。

$(function() {      
    $( "#supcode" ).autocomplete({
        source:"index.php/inventory/supcode",
        minLength: 1                    
    });
});

MVCアーキテクチャ(Codeigniter)を使用し、コントローラーで次のメソッドを使用してJSONデータを返します。

function supcode()
{     
    $dataarray="";
    $data=$this->Inventorymodel->supcode();
    echo json_encode($data);
}

そして、次の関数を使用してモデル内のデータをフェッチしています。

function supcode(){
$finresult="";
$this->db->select('name');
$query = $this->db->get('supplier');
$result=$query->result_array();

foreach($result as $row){
    $finresult[]=array(
        'name' => $row['name']
    );
}
return $finresult;
}

テキストボックスに文字を入力すると、フィルタリングが機能せず、すべての項目が一覧表示されます。ここで何が間違っていますか?誰か助けてもらえますか?前もって感謝します....

4

1 に答える 1

1

サーバー側でフィルタリングを完了する必要があり (@Henrik による質問へのコメントに記載されているように)、期待されるデータ形式labelは、フィールドを含むオブジェクトの配列である必要がありvalueます。

[ { label: "Choice1", value: "value1" }, ... ]

このリンクjQuery Autocompleteを参照してください。

于 2012-09-13T14:58:58.760 に答える