最後に、jqueryを使用することにしました。ビューで は、私はこのようなクラスの最後で最大量を置く:
= f.collection_check_boxes :color_ids, group.colors, :id, :name, item_wrapper_class: "bla bla2 #{group.maximum.to_s}"
2入力[タイプ=チェックボックス]私はマークされているどのように多くの他の人を見つけるクリックする
$(this).parent().parent().siblings().children().children(':checked').length
3私は最大aを比較し、次の行により、ステップ1からの最大許容値
max = parseInt($(this).parent().parent().attr('class').split(' ').pop());
4を見つけます。チェックされていて、最初のものが少ないかどうかをチェックしないようにする。コード全体は次のようになります
$('input[type=checkbox]').on('change', function(evt) {
var max;
max = parseInt($(this).parent().parent().attr('class').split(' ').pop());
if ($(this).parent().parent().siblings().children().children(':checked').length + 1 > max) {
this.checked = false;
}
});