0

我有这样的表格:

<div class="row">
  <div class="span6 offset3">
    <%= form_for @user do |f| %>

      <%= render '/shared/error_messages' %>

      <%= f.label :name %>
      <%= f.text_field :name %>

      ........

      <% if current_user.admin? %>

      <%= f.label :admin %>
      <%= f.check_box :admin, {checked: true} %>

      <br /><br />

      <%= f.label :developer %>
      <%= f.check_box :developer %>

      <% end %>

     ........

      <%= f.submit "Invite new user", class: "btn btn-large btn-primary" %>

    <% end %>
  </div>
</div>

如您所见,有两个check_boxs来确定新用户是admin还是developer。默认情况下检查管理员。

我想要做的是,当有人点击选中的管理员时,它不会被取消选中。单击开发人员时,管理员将被取消选中,开发人员将被选中。

新用户必须是管理员或开发人员。两个复选框不应同时为假

4

2 回答 2

1

此功能(只有一种可能的选择)适用于单选按钮,而不是复选框

于 2013-09-12T08:32:16.347 回答
1

使用单选按钮。如果您仍然坚持使用复选框,请为这两个复选框指定一个类名,在 javascript 中使用 live 绑定该类并进行验证!

$('.checkboxes').live('change', function(){

    if($(this).is(':checked')){
        dosomething...
    }
});
于 2013-09-12T08:36:03.363 回答