Confirm в цикле
Подскажите, как сделать, чтобы окно confirm выскакивало, пока нажимаем "Ok"? а когда жмем "отмена", тогда только закрывалось. Пытался сделать, но что-то он выскакивает в цикле постоянно
do {
confirm("test");
} while (confirm != null);
Ответы (2 шт):
Ну глядите) Давайте посмотрим на код который вы написали.
do {
confirm("test");
} while (confirm != null);
Мы видим инструкцию
выполнять {
вызвать confirm("test");
} до тех пор пока (confirm != null);
confirm - это метод. Он не будет равен null. Но тут проблема даже не только в этом. Confirm показывает окошко с кнопками Ok и Cancel. Если в этом окошке вы нажимаете на OK то метод confirm вернёт true, если нажать на Cancel - то метод confirm вернёт false. Именно на это вам нужно опираться при проверке условия в while.
Для этого вам нужно сначала это самое true или false вернуть из confirm и сохранить в переменную и уже её проверять в условии.
Просто попробуйте опираясь на то что я написал выше понять этот код. Он работает:
do {
var answer = confirm("test");
} while (answer === true);