2012-05-02 25 views
0

私は自分のウェブサイトで簡単な検索を実装しました。「検索するフィールドを選択してから、検索クエリを入力してください」という考えがあります。ただし、少なくとも1つの検索オプションは、テキストフィールドの自由度を持たずにドロップダウンメニューに限定する必要があります。Railsでselect_tagとtext_field_tagを動的に変更

私はいくつかのオプションを読んでテストしていましたが、:on_changeといくつかの詳細なjavascriptソリューションについてのいくつかの投稿を見ましたが、何をすべきか分かりませんでした。

私の現在のビューがtext_field_tag続いselect_tagを持っていますが、私はselect_tagがオンになってどのような値をチェックし、次のフィールドがtext_field_tagselect_tagであるかどうかを決定するためにそれを使用したいです。私はHAMLを使用しています、これは私の見解である:変数@option@s_stringが来ているところ私はselect_tagと前回の検索で入力されたどんな値でtext_field_tagのデフォルト値を設定しています

#simple-search-options 
    =form_tag packages_path, :method=>'get' do 
    Search by: 
    = select_tag :search_option, options_for_select(@search_options, @option) 
    = text_field_tag :search_string, @s_string 
    = submit_tag 'Search' 

注、thatsのから。これは、ページが最初に生成されたときに、@optionの値に基づいて何を表示するかを選択したかったことを意味するため、ソリューションを複雑にする可能性があります。

は、私が最初に select_tagと、いくつかのコントローラと、いくつかのビューが移入になるだろう submit_tagdivを固執する期待していたが、私はフォロースルーする方法を知りませんでした。

答えて

0

テンプレートにselect_tagtext_field_tagの両方を追加し、JavaScriptを使用して非表示にする必要があります。タイプが異なるため、この2つのフィールドに異なる名前を設定する方が良いでしょう。

+0

Jqureyさん、ありがとうございました – case451

+0

それは私にとってはうまくいきました。唯一の問題は、 'select_tag'と' text_field_tag'の両方の値が送られてくることです。つかいます。 nbd。どうもありがとう! – case451

関連する問題