0

我在我的网站上实现了一个简单的搜索,想法是“选择您要搜索的字段,然后输入您的搜索查询”。但是,至少有一个搜索选项应该限制在下拉菜单中,而不是具有文本字段的自由度。

我一直在阅读和测试一些选项,看到了一些关于:on_change和一些深入的 javascript 解决方案的帖子,但我就是不知道该怎么做。

我当前的视图有 aselect_tag后跟 a text_field_tag,但我想检查它的值select_tag并使用它来决定下一个字段是 atext_field_tag还是 a select_tag。我正在使用 Haml,我认为这是:

#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'

请注意,我正在使用在先前搜索中输入的任何值来设置select_tag和 的默认值text_field_tag,这就是变量@option@s_string的来源。这可能会使解决方案复杂化,因为这意味着在第一次生成页面时,我希望已经根据@option.

我希望在第一个和将由一些控制器和一些视图填充的那个div之间坚持一个,但我不知道如何跟进。select_tagsubmit_tag

4

1 回答 1

0

您应该在模板中添加select_tagtext_field_tag,然后使用 JavaScript 隐藏和显示它们。最好为这两个字段设置不同的名称,因为它们的类型不同。

于 2012-05-02T00:28:09.390 回答