Показать сообщение отдельно
  #4 (permalink)  
Старый 08.01.2019, 00:55
Интересующийся
Отправить личное сообщение для prolk Посмотреть профиль Найти все сообщения от prolk
 
Регистрация: 15.03.2018
Сообщений: 20

рони,
1. кнопка должна быть деактивирована, пока не будут выбраны, 3 чекбокса.
2.при выборе 3-х, кнопка активируется.
3.кнопка ведет, куда-либо, или дает другой набор вариантов.
Это я себе такую задачу поставил....
Только кнопка сразу активирована... только после первого выбора она disabled... что не позволительно..... это полный код:
<form name="form">
        <input type="checkbox" name="var" value="var1"> <span>VARIANT 1</span><br>
        <input type="checkbox" name="var" value="var2"> <span>VARIANT 2</span><br>
        <input type="checkbox" name="var" value="var3"> <span>VARIANT 3</span><br>
        <input type="checkbox" name="var" value="var4"> <span>VARIANT 4</span><br>
        <input type="checkbox" name="var" value="var5"> <span>VARIANT 5</span><br>
        <input type="button" value="next">
    </form>
    <div class="result"></div>

let res = document.querySelector('.result'),
    btn = document.querySelector('input[type=button]'),
    numCheck = 0,
    maxCheck = 3;

function radioClick(elem) {
    if (!elem.id) {
        numCheck++;
        elem.setAttribute('id', 'check');
    } else {
        numCheck--;
        elem.setAttribute('id', '');
    }
    for (let i = 0; i < form.length; ++i) {
        if (numCheck == maxCheck) {
            if (!form[i].checked) {
                form[i].disabled = true;
                res.innerHTML = "далее";
                btn.disabled = false;
            }
        } else if (numCheck < maxCheck) {
            form[i].disabled = false;
            res.innerHTML = '';
            btn.disabled = true;
        }
    }
}

for (let i = 0; i < form.elements.length; ++i) {
    let forms = form.elements[i];
    forms.onclick = function() {
        if (forms.type === 'checkbox') {
            radioClick(this);
        }
    }

}
Ответить с цитированием