我使用Simple form gem在我的rails应用程序上设置表单。我有一个复选框列表(大约20个选项),我想限制用户只选择3.我怎样才能实现这个目标?
查看:
<%= f.association :interests, :as => :check_boxes, :label => false %>
呈现HTML的第一部分
<div class="control-group check_boxes optional">
<div class="controls">
<label class="checkbox">
<input class="check_boxes optional" id="user_interest_ids_1" name="user[interest_ids][] "
type="checkbox" value="1" />Adventure Sports</label>
<label class="checkbox">
<input class="check_boxes optional" id="user_interest_ids_2" name="user[interest_ids][]"
type="checkbox" value="2" />Arts and Crafts</label>
答案 0 :(得分:3)
$('input[type=checkbox]').change(function(e){
if ($('input[type=checkbox]:checked').length > 3) {
$(this).prop('checked', false)
}
})
答案 1 :(得分:2)
可能会使用jQuery来解决这个问题:
$(":checkbox").click(function(){
$length = $(":checkbox").length();
if ( $length > 2 ) {
$(":checkbox:checked").attr("disabled", true);
} else {
$(":checkbox").removeAttr("disabled");
}
});