我有一个复选框,我希望复选框被检查,如果一个参数等于1.所以我需要:如果条件为真,只检查为真。复选框:检查条件
<%= check_box_tag 'catalog_image', 1, :onclick => 'this.form.submit()', :checked => (params[:catalog_image] == 1)%>
我正在测试的当前条件不起作用。当表单提交时,参数将被自动添加或减去,因为它被链接回同一页面。
我有一个复选框,我希望复选框被检查,如果一个参数等于1.所以我需要:如果条件为真,只检查为真。复选框:检查条件
<%= check_box_tag 'catalog_image', 1, :onclick => 'this.form.submit()', :checked => (params[:catalog_image] == 1)%>
我正在测试的当前条件不起作用。当表单提交时,参数将被自动添加或减去,因为它被链接回同一页面。
的API说: Rails check_box_tag
check_box_tag(name, value = "1", checked = false, options = {}) public
所以,你可以在一个单一的提高这line:
<%= check_box_tag 'catalog_image', 1, <CONDITION>, :onclick => 'this.form.submit()' %>
使用,如果到这一点,因为:checked
标记,重要的存在,而不是它的价值
<% if params[:catalog_image] == 1 %>
<%= check_box_tag 'catalog_image', 1, :onclick => 'this.form.submit()', :checked =>true %>
<% else %>
<%= check_box_tag 'catalog_image', 1, :onclick => 'this.form.submit()'%>
<% end %>
'<%= check_box_tag:some_boolean,true, (@somestring =='true') - %>' Works just fine – Aeramor
这是更好的答案。 – Aeramor