【问题标题】:Default the checkbox to unchecked in Rails 2.3在 Rails 2.3 中将复选框默认为未选中
【发布时间】:2018-05-23 20:13:25
【问题描述】:

我正在更新 Rails 2.3.18 旧版应用程序。出于某种原因,以下代码给了我一个选中而不是未选中的复选框。即使我关闭 javascript 也会发生这种情况,所以我想我已经排除了这种情况:

f.check_box("college", {}, "y", "n")

HTML 中的输出是

<label id="college" for="user_college" style="display:block;">
    <input name="user[college]" type="hidden" value="n"><input checked="checked" id="user_college" name="user[college]" type="checkbox" value="y"> <span>Some copy here.</span></label>

我查看了https://apidock.com/rails/ActionView/Helpers/FormBuilder/check_box 并没有看到默认为未选中的选项。是否有 f.check_box 选项默认为未选中?

【问题讨论】:

  • @MoamenNaanou 不幸的是,该帖子没有显示如何使输入默认为未选中。据我所知,我使用的代码应该未选中,因为我没有在 {} 选项中特别包含“选中”。有什么想法吗?
  • 我当前的解决方案是使用 jQuery 和下面的类似的东西,但是虽然这可行,但我想看看是否有办法通过 check_box 获得类似的结果: $('#college : checkbox').removeAttr('checked');

标签: ruby-on-rails ruby-on-rails-2


【解决方案1】:

您可以尝试将:checked =&gt; false 传递给f.check_box 方法的第二个参数:

f.check_box("college", { :checked => false }, "y", "n")

或 ruby​​ 新语法:

f.check_box("college", { checked: false }, "y", "n")

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-10-09
    • 1970-01-01
    • 1970-01-01
    • 2012-11-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-22
    相关资源
    最近更新 更多