-2

Cakephp 2.3.7 を使用してオートコンプリート ファイルを作成しようとしています。チュートリアルはたくさんありますが、そのほとんどは Cake 1.3 程度のものです。

このような Cake 2.X のいくつかを見つけました ( http://hitechcyberabad.blogspot.com.es/2013/02/autocomplete-in-cakephp-22x-using-jquery.html )が、どれも機能しません私のため。

チュートリアルのcitys_dropdown.ctpのコードを編集する必要がありました:

<div class="contacts search form">
<fieldset>
<legend></legend>
    <?php //paginator->options(array('url' => $this->passedArgs));
    $this->Form->create('Contact', array('type'=>'post','action' => 'find'));

    echo $this->Form->input('city', array(
        'empty' => 'Pick a city',
        'label' => 'City',
        'option'=> $cities,
        'id' => 'city',
        'autocomplete' => 'on'));
    echo $this->Form->end(__('Search'));
    ?>
   </fieldset>

</div>
<script>
$( "#city" ).autocomplete({
  source: "/cake/contacts/find",
  minLength: 2,
  delay: 2
});
</script>

残りのコードはチュートリアルと同じです。

エラーメッセージは表示されません。単に機能せず、理由がわかりません。

4

2 に答える 2

3

ajax 呼び出しの応答をデバッグしましたか? Firefox の chrome または Firebug のデバッグ ツールを使用してリクエストをデバッグするか、http: //www.charlesproxy.com/ を使用してデバッグを行います。

あなたのjson応答が正しくなく、おそらくエラーが含まれていると確信しています。また、リンクしたチュートリアルでは、CakePHP で json を処理する最良の方法が示されていません。マニュアルのこのページを参照してください。応答をデバッグし、それで質問を更新します。

于 2013-07-08T10:37:00.560 に答える