это потому, что у вас нет события, когда пользователь щелкает и третий флажок.
Ваша функция показать / скрыть сообщение работает, когда есть обновление (изменение) на входе с классом .badCheckbox
но когда вы нажимаете на третий (где нет класса), ваша функция не вызывается.
Я думаю, что вы должны иметь класс на всех ваших флажках и использовать его в своей функции, которая выдает изменения .
Примерно так:
$('.checkbox').change(function() {
let checked = 0;
$('.badCheckbox').each(function() {
// ...
});
И ваш html
<input name="checkin" type="checkbox" class="checkbox oneChecked badCheckbox"/>
<input name="checkin" type="checkbox" class="checkbox oneChecked badCheckbox"/>
<input name="checkin" type="checkbox" class="checkbox oneChecked"/>
Существует много возможностей для оптимизации вашего кода, например использование радио для удаления вашей функции oneChecked
или печать правильного сообщения, когда флажок установлен, вместо использования показать / скрыть два div
, но я думаю, что вы должны увидеть это в будущем
Я надеюсь, что это может помочь вам и добро пожаловать в StackOverflow