我将哈希存储为application.rb
中定义的常量看起来有点像这样:
ITEMS = { "Item 1" => ['1 - sdfsdf', '2 - sdlfksdf'], "Item 2" => ['1 - lkfsdf', 2- dkfdjk']}
我想要的是一个带有选项的组合框:
第1项
第2项
和第二个组合框,其中包含散列中数组中的项目,具体取决于第一个选择。
有没有一种简单的方法可以使用rails 3(我正在使用JQuery)
由于
答案 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
关联的视图应该只包含您要添加的选择字段。没有完全尝试过,但我认为这应该有用。