0

私はrails3-jquery-autocomplete gem で遊んでいますが、かなりうまくいきます。ここに私のオートコンプリート入力がどのように見えるかの例があります:

= f.autocomplete_field :interest, autocomplete_interest_users_path, :"data-delimiter" => ','

多くの場合、入力に多くの単語を書き込む必要があるため、デフォルトのinputの代わりにtextareaを使用する方がよいのですが、それを行う方法は? 何か案は?

前もって感謝します。

4

2 に答える 2

1

http://rightjs.org/ui/tags/demoのようなものでしょうか? http://st-on-it.blogspot.com/2011/04/making-tags-with-rails-and-rightjs.htmlに、Rails でこれを機能させるための記事があります。

于 2012-05-14T03:00:37.297 に答える
0

jQueryを使った方法は次のとおりです。

これをヘルパーとして追加します。

module ActionView
  module Helpers
    module FormHelper

      def autocomplete_text_area(object_name, method, source, options ={})
        options["data-autocomplete"] = source
        text_area(object_name, method, rewrite_autocomplete_option(options))
      end
    end
  end

  class ActionView::Helpers::FormBuilder
    def autocomplete_text_area(method, source, options = {})
      @template.autocomplete_text_area(@object_name, method, source, objectify_options(options))
    end
  end
end

これは、Rails でフォーム ヘルパーを拡張する方法です。ここで行っているのは、ビューで呼び出すことができる独自のメソッドを追加することです。

次に、これを JavaScript ファイルの 1 つに追加します。

 $('textarea[data-autocomplete]').railsAutocomplete()

これにより、テキストエリアをリッスンして応答するようにオートコンプリート js スクリプトが設定されます。

これで、ビューで次のようなことができるはずです。

f.autocomplete_text_area :name, autocomplete_menu_item_name_menus_path, placeholder: "Menu Item Name", class: 'input-lg menu_item', size: "45x2"
于 2014-05-03T15:42:58.180 に答える