【问题标题】:Display check box as checked when false为 false 时显示复选框为选中状态
【发布时间】:2014-12-29 04:52:55
【问题描述】:

check_box_tag 的默认功能是显示它检查了true 值,因此下面的属性“inactive”将显示为检查true

f.check_box :inactive

如何有相反的行为,即当值为false 时显示选中的复选框?

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-4 checkbox erb formbuilder


    【解决方案1】:
    f.check_box :inactive, checked: (!f.object.inactive)
    

    【讨论】:

    • 嗨!实际上,它显示正确(即相反的值),但它在提交时也传递了相反的值。 IE。即使用户没有触摸复选框,它也会在每次提交时自动保存相反的值...
    • 您知道解决此问题的任何方法,以便选中复选框保存false
    • 不是开箱即用的。它会保存它的检查值,就像我们指定它一样。最好的选择是在值为 true (即默认行为)时将框显示为选中状态。如果您想让您的版本正常工作,即如果用户没有更改它,则忽略该值,您可以在复选框中添加一个 HTML 类,如果用户更改复选框的值,您可以添加 JavaScript 以删除该类;然后在提交表单时,您可以在提交表单之前找到并忽略该类的任何复选框。
    • 非常感谢您的解释!
    猜你喜欢
    • 2015-11-28
    • 1970-01-01
    • 2018-12-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-08
    相关资源
    最近更新 更多