В JavaScript существует несколько способов обработки события «флажок установлен». Вот несколько часто используемых методов:
-
Использование события onchange:
Вы можете прикрепить прослушиватель событийonchangeк элементу флажка, который будет срабатывать при каждом изменении состояния флажка. Затем вы можете проверить, установлен ли флажок, используя свойствоchecked.const checkbox = document.getElementById('myCheckbox'); checkbox.onchange = function() { if (this.checked) { // Checkbox is checked } else { // Checkbox is not checked } }; -
Использование события onclick.
Другой подход — использовать событиеonclickвместоonchange. Это событие возникает при каждом щелчке флажка, независимо от того, изменяется состояние или нет.const checkbox = document.getElementById('myCheckbox'); checkbox.onclick = function() { if (this.checked) { // Checkbox is checked } else { // Checkbox is not checked } }; -
Использование делегирования событий.
Если у вас есть несколько флажков и вы хотите обработать событие для всех из них, вы можете использовать делегирование событий. При таком подходе вы прикрепляете один прослушиватель событий к общему родительскому элементу и проверяете цель события, чтобы определить, какой флажок был установлен.const parent = document.getElementById('checkboxContainer'); parent.addEventListener('change', function(event) { if (event.target.matches('input[type="checkbox"]')) { if (event.target.checked) { // Checkbox is checked } else { // Checkbox is not checked } } });