如何从rails中的下拉列表中获取所选文本

时间:2010-11-18 18:52:33

标签: ruby-on-rails views drop-down-menu

我在数组中有选项

@groupings = [["Text 1", "value_1"],["Text 2", "value_2"]]

所以即时使用

select_tag(:groupby, options_for_select(@groupings, params[:groupby]))

我想在页面上填充带有所选文本的H3标签。 (即“文本2”如果参数[:groupby] =“value_2”)

有没有铁路方式来做到这一点?除了从@groupings数组手动派生它?

TIA,   卡比

1 个答案:

答案 0 :(得分:1)

也许您只需要一个简单的find调用,这些通常最好包含在帮助器中:

def label_for_grouping(group_id)
  grouping = @groupings.find { |g| g[1] == group_id }

  grouping and grouping[0]
end

然后:

<h3><%= label_for_grouping(params[:groupby]) %></h3>

如果您拥有@groupings变量的哈希版本,或者只是将其保留为哈希并使用.to_a将其作为数组呈现,则此查找会更容易。