Ruby on Rails从哈希中选择标签

时间:2011-04-06 10:03:53

标签: javascript html ruby-on-rails-3

我将哈希存储为application.rb

中定义的常量

看起来有点像这样:

ITEMS = { "Item 1" => ['1 - sdfsdf', '2 - sdlfksdf'], "Item 2" => ['1 - lkfsdf', 2- dkfdjk']}

我想要的是一个带有选项的组合框:
第1项 第2项

和第二个组合框,其中包含散列中数组中的项目,具体取决于第一个选择。

有没有一种简单的方法可以使用rails 3(我正在使用JQuery)

由于

1 个答案:

答案 0 :(得分:1)

您可以使用以下内容创建第一个框:

<%= f.select :var_name, ITEMS.collect { |key, value| [key, key] } %>

然后,添加观察者

<%= observe_field 'element_var_name',
      :url => { :action => "another_action_here" },
      :update => "div_tag_to_update",
      :with => "'selected='+ escape($('element_var_name').value)" %>

务必根据您的情况调整element_var_name和操作。 another_action_here操作应该呈现如下视图:

def call_ids_by_type
  @element_list = ITEMS[param[:selected].collect { |value| [value, value] }
  render :layout => false
end

关联的视图应该只包含您要添加的选择字段。没有完全尝试过,但我认为这应该有用。