Как запустить функцию после выполнения всех условий - PullRequest
0 голосов
/ 06 июня 2019

Я пытаюсь создать контактную форму с радиокнопками и флажками для пакетов, которые я собираюсь предложить.Первое радио для полного пакета.Вторая кнопка-переключатель показывает флажки, которые разбивают полный пакет на отдельные параметры.

Я пытаюсь добиться того, чтобы все флажки были отмечены, первый флажок был установлен, а все флажки сняты и скрыты.Мне удалось заставить функцию работать с одним маленьким

var radio1 = document.getElementbyID('radio1');
var radio2 = document.getElementbyID('radio2');
var checkgroup = document.getElementbyID('checkgroup');
var check1 = document.getElementbyID('check1');
var check2 = document.getElementbyID('check2');
var check3 = document.getElementbyID('check3');
var check4 = document.getElementbyID('check4');
$(document).change(function () {
    if (radio2.checked) {
        checkgroup.style.display = "block";
    } else {
        checkgroup.style.display = "none";
    }
});
$(document).change(function () {
    if ((check1&&check2&&check3&&check4).checked) {
    check1.checked = false;
    check2.checked = false;
    check3.checked = false;
    check4.checked = false;
    checkgroup.style.display = "none";
    radio1.checked = true;
    }
});

Каждый раз, когда я проверяю флажок, который является последним в условии if() (только последний, но не остальные), он выполняет функцию, которая пропускаетточка.Моя цель: если все проверено, выполнить функцию (снять все, скрыть флажки, переключиться обратно на Radio1).Если какие-либо 3 проверяются, ничего не должно произойти.Я чувствую, что что-то упускаю, я просто не знаю, что.

Ответы [ 2 ]

0 голосов
/ 06 июня 2019

Попробуйте это: https://jsfiddle.net/h95y86gt/22/

Кроме того, я надеюсь getElementbyID это опечатка для document.getElementById()

0 голосов
/ 06 июня 2019

Изменить if ((check1&&check2&&check3&&check4).checked)
на if (check1.checked && check2.checked && check3.checked && check4.checked)

Я запутался, что это даже несколько сработало, поскольку вы по существу использовали && между объектами Javascript, а не (логическими) переменными

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...