我已经停留了一段时间,并且一直在尝试使用javascript ect,但是我觉得有一种更简单的方法。
我需要使用if语句来渲染表单,具体取决于已单击的选项卡。我意识到您无法做if tab1.checked
之类的事情,因为ruby无法做到这一点。但是,在下面的代码中,我考虑过向选项卡添加参数,并在if语句中使用它。这可能还是任何其他方式?下面的代码是我的实验,谢谢。请没有任何JavaScript建议。
<input id="tab1" type="radio" name="tabs" :checked = <% (params[:uk_checked]) %>>
<label class="label-header" for="tab1"> UK Address</label>
<input id="tab2" type="radio" name="tabs" >
<label class="label-header"for="tab2"> International Address </label>
<!-- <section id="content1"> -->
<% if params[:uk_checked] == 1 %>
<%= f.simple_fields_for :address do |fields| %>
<section id="content1">
<%= render "address/fields", fields: fields, addressable: addressable %>
</section>
<% end %>
<% else %>
<%= f.simple_fields_for :address do |fields| %>
<section id="content2">
<%= render "address/international_fields", fields: fields, addressable: addressable %>
</section>
<% end %>
<% end %>