在 HAML 的表单中标记当前选择的选项值的最快和最优雅的方法是什么?
%form{:action => '', :method => 'get'}
%select{:name => 'param_name'}
%option{:value => 'A'} A data
%option{:value => 'B'} B data
单程:
- if params[:param_name] == "A"
%option{:value => 'A', :selected => 'selected'} A data
- else
%option{:value => 'A'} A data
但这不合适当
select
框将有许多选项字段...
最佳答案
像这样的东西会起作用(使用带有运算符 =>
的旧“hashrocket 语法”)
%select
%option{:value => "a", :selected => params[:x] == "a"}= "a"
%option{:value => "b", :selected => params[:x] == "b"}= "b"
或者,在较新的 Ruby 版本(1.9 及更高版本)中:
%select
%option{value: "a", selected: params[:x] == "a"}= "a"
%option{value: "b", selected: params[:x] == "b"}= "b"
关于ruby-on-rails - Rails 表单(选择/选项)-如何使用 HAML 标记所选选项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12691309/