【问题标题】:Rails Form select : preselect one choiceRails Form select:预选一个选项
【发布时间】:2017-04-28 16:14:03
【问题描述】:

我有这个 Rails 代码:

 <% status_a = [ ["DRAFT", "DRAFT"], ["OPEN", "OPEN"], ["CLOSE", "CLOSE"] ] %>
 <%= form_for(:dash_action, url: brokers_dashboard_path ) do |f| %>
      <%= f.select(:select_status, options_for_select(status_a), {}, selected:'OPEN' %>
 <% end %>

当它运行时,它会生成以下 HTML 代码:

<select selected="selected" name="dash_action[select_status]" id="dash_action_select_status">
<option value="DRAFT">DRAFT</option>
<option value="OPEN">OPEN</option>
<option value="CLOSE">CLOSE</option>
...

但我期望的是: selected="OPEN" 而不是 "selected"

为什么选择方法没有做我想要的?

【问题讨论】:

  • &lt;%= f.select(:select_status, options_for_select(status_a), selected:'OPEN' %&gt;
  • 不,这没有帮助。我得到了这个:&lt;select name="dash_action[select_status]" id="dash_action_select_status"&gt; &lt;option value="DRAFT"&gt;DRAFT&lt;/option&gt; &lt;option value="OPEN"&gt;OPEN&lt;/option&gt; &lt;option value="CLOSE"&gt;CLOSE&lt;/option&gt; ...

标签: ruby-on-rails ruby-on-rails-4 ruby-on-rails-5


【解决方案1】:

试试下面的代码sn-p,默认值应该是options_for_select的参数

f.select :select_status, options_for_select(status_a, 'OPEN')

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-12-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-14
    • 1970-01-01
    相关资源
    最近更新 更多