【发布时间】:2015-08-11 16:24:21
【问题描述】:
我展示了一个带有一些复选框的引导模式:
<span class="pull-right">
<%= check_box_tag 'role_ids[]', "all", false, class: 'sel' -%><span class="right-label"><%= t('.suspend.suspend_all_roles') %></span><br>
<% UserRole.all.each do |role| %>
<%= check_box_tag 'role_ids[]', role.id, false,class: 'sel' -%><span class="right-label"><%= role.user_role %></span><br>
<% end %>
</span>
还有一个确定按钮和一个取消按钮。
当用户打开模式并且他们可以选择一些复选框时。但是我遇到了一个参数为零的问题:
- 打开模态
- 选中一些复选框
- 取消模态
- 重新打开模式(相同的复选框将被选中,因为它们被“记住”)
- 点击确定
当调用 Controller 操作时 - params[:role_ids] 是 nil。
知道为什么会发生这种情况吗?它没有通过哪些复选框已被选中
有没有办法在模式关闭和重新打开时取消选中所有复选框?
编辑:
当模式关闭并重新打开时,我尝试使用此 JS 取消选中所有复选框,但 params[:role_ids] 仍然以 nil 出现:
$(".modal").on("hidden.bs.modal", function() {
$others.prop('checked', false);
$suspend_all.prop('checked', false)
});
它在您第一次打开模式时有效,但在取消并重新打开时无效。
【问题讨论】:
标签: jquery ruby-on-rails