ruby-on-rails - 在 HAML 中保持复选框被选中

标签 ruby-on-rails haml

我在 HAML 文档上有一些复选框,当我单击“刷新”按钮时,它们应该会更改显示的结果。这工作正常,但当页面重新加载时,选中的框再次全部取消选中。

如何重新配置​​ HAML 以在页面浏览中保持复选框选中状态?

= form_tag movies_path, :method => :get do
  Include:
  - @all_ratings.each do |rating|
    = rating
    = check_box_tag "ratings[#{rating}]", '1', true
  = submit_tag 'Refresh'

我还指定了默认情况下应该选中复选框,但是当我加载页面时它们没有被选中...

最佳答案

这将完成您想要的:

    = form_tag movies_path, :method => :get do
      Include:
      - @all_ratings.each do |rating|
        = rating
        = check_box_tag "ratings[#{rating}]", rating, if params[:ratings]; params[:ratings].include?(rating) end
    = submit_tag 'Refresh'

params[:ratings] 实例在调用后仍然存在,因此您可以只用它来标记用户之前点击的框。

关于ruby-on-rails - 在 HAML 中保持复选框被选中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12987920/

相关文章:

ruby-on-rails - HAML 中的多个条件类

javascript - 如果所有 child 都不可见jquery隐藏 parent

ruby-on-rails - 如何使用 Ruby on Rails 和 Haml 在当前迭代中访问数组中的下一项?

javascript - Rails-React 不适用于 ES6

ruby-on-rails - 无法使用 OpenSSL 编译 Ruby

ruby-on-rails - 需要 Rails bundle 安装密码

ruby-on-rails - 将属性附加到模型以在 Rails 3 上临时使用

ruby-on-rails - 关于嵌套属性表单的问题

ruby-on-rails - Haml:link_to 与 button_to