[英]How to have a default radio button checked in Ruby?
我有一個使用 Ruby 構建的單選按鈕,如下所示
<p>Which design do you prefer to use? </p>
<% [ 'Design 1', 'Design 2', 'Design 3', 'Design 4', 'Design 5' ].each do |theme| %>
<br><%= radio_button_tag 'theme', theme, @theme == theme %>
<%= label_tag "theme_#{theme}", theme.humanize %>
<% end %>
我想確保第一個元素(又名設計 1)在默認情況下始終處於選中狀態,除非用戶選擇其他設計。
你可以這樣做:傳入checked
以檢查項目
<%= radio_button_tag 'theme', theme, checked: @theme.FIELD_NAME == 'design' %>
有關詳細信息,請參見此處http://apidock.com/rails/ActionView/Helpers/FormTagHelper/radio_button_tag
回答你的評論:
啊我不明白? :( 所以
<%= radio_button_tag 'theme', theme %>
變成 <%= radio_button_tag 'theme', theme, checked: @theme.FIELD_NAME == 'design' %> ?? 但這會引發錯誤?我只想要默認情況下要選擇的第一個單選按鈕元素 -
FIELD_NAME
是模型FIELD_NAME
的名稱。 要僅檢查第一項,您可以嘗試以下操作:只需添加checked: true
關鍵字
<%= radio_button_tag 'theme', theme, @theme == theme, checked: true %>
好的,所以您需要執行以下操作:
<% [ 'Design 1', 'Design 2', 'Design 3', 'Design 4', 'Design 5' ].each_with_index do |theme, i| %>
<% if i == 0 %>
<br><%= radio_button_tag 'theme', theme, @theme == theme, checked: true %>
<% else %>
<br><%= radio_button_tag 'theme', theme, @theme == theme %>
<% end %>
<%= label_tag "theme_#{theme}", theme.humanize %>
<% end %>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.