You could use:
$(".myCheckBox:not(:checked)").prop('disabled', true);
To disable all checkboxes which are not
checked
.
You can then reenable your checkboxes (in an else
) once fewer than 3 checkboxes have been selected
See example below:
$('.myCheckBox').on('input', function() {
var checkBoxLenghtStandard = $('.myCheckBox:checked').length;
if (checkBoxLenghtStandard >= 3) {
$(".myCheckBox:not(:checked)").prop('disabled', true);
} else {
$('.myCheckBox[disabled]').prop('disabled', false)
}
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input class="myCheckBox" type="checkbox" name="addon-2811-workshop-normal-1[]" />
<input class="myCheckBox" type="checkbox" name="addon-2811-workshop-normal-1[]" />
<input class="myCheckBox" type="checkbox" name="addon-2811-workshop-normal-1[]" />
<input class="myCheckBox" type="checkbox" name="addon-2811-workshop-normal-1[]" />
<input class="myCheckBox" type="checkbox" name="addon-2811-workshop-normal-1[]" />