0

javascriptを使用して画面に追加しているフォームでオートコンプリートが機能しないようです。たとえば、新しいルートを使用してオブジェクトのフォームをレンダリングしています。railsファイルのnew.js.erbには、次のものがあります。

$("div#container").hide().html("<%= escape_javascript render 'form' %>").fadeIn();

レンダリングされたら、入力要素に入力すると次のようになります。

<input id="object_name" name="object[name]" placeholder="Name" size="30" type="text">

そしてjavascriptでそれを聞いてください:

jQuery ->
  $('input#object_name').autocomplete
    source: ['Test', 'Testing', 'Test 234']

オートコンプリートに関する限り、何も得られません。ただし、このフォームをコピーして貼り付け、ロード時に画面に表示すると(Railsの新しいパスで動的に追加されない場合)、正常に機能します。動的に追加されたものをリッスンするためにオートコンプリートを取得するにはどうすればよいですか?

4

1 に答える 1

1

フォーム要素の前にオートコンプリートスクリプトが追加されているように見えます。ドキュメントに追加された#object_name後にオートコンプリートスクリプトを再定義することを確認すれば、#object_nameすべてうまくいくはずです。

于 2012-11-01T19:44:49.993 に答える