Здравствуйте, есть JS-скрипт, который выполняет следующую функцию: когда пользователь делает активными
3 чекбокса, пользователя перебрасывает на страницу по
сгенерированной чекбоксами ссылке.
Ссылка формируется из
value=""
трех активированных пользователем чекбоксов, в value помещены отрезки полной ссылки.
Например, в одном "/uslugi", во втором "/remont/", в третьем "remont.html" = site.ru/uslugi/remont/remont.html
Чекбоксы из которых следует захватывать value указаны в скрипте нужным классом.
Теперь сама проблема: когда на странице более 3 элементов одного итого же класса - скрипт почему-то берет value всех чекбоксов, получается каша.
Помогите, пожалуйста, решить проблему. Нужно чтобы бралось value только активированных пользователем чекбоксов, а остальные, хоть и с тем же классом, не захватывались.
Спасибо!
<input id="link1" class="linkinp form-check-input" name="link" type="checkbox" value="/razbito-steklo/">
const checks = document.querySelectorAll('input.form-check-input')
checks.forEach(c => c.addEventListener('click', onClick))
function onClick() {
if ([...checks].filter(c => c.checked).length === 3) {
const url = 'http://site.ru' + [...checks].map(c => c.value).join('')
location.href = url
}
}