Показать сообщение отдельно
  #4 (permalink)  
Старый 21.09.2020, 00:26
Аспирант
Отправить личное сообщение для win32s Посмотреть профиль Найти все сообщения от win32s
 
Регистрация: 28.09.2019
Сообщений: 38

Есть еще вопрос - как правильно выполнить действия после того, как пользователь отметил флажки? Скажем, вывожу ему форму ввода. Число три тут для примера (три флажка), сугубо для теста.

var cnt = 0;

async function mouseClick(el) 
{
    return new Promise(resolve => 
	el.onclick = () => {
		//console.log(el);
		  el.disabled = true;
		
		cnt++;
  		if (cnt < 3)
			 { setTimeout(resolve, 1000); }
		else
			{ console.log("fin"); }
		}
	);
}

(async function main() 
{
    for(const el of document.querySelectorAll('[type="checkbox"]')) 
	{
        el.removeAttribute('disabled');
        await mouseClick(el);
    }
	main().then(console.log("FIN"))	;
})();


Какой из вариантов правильный , где в main или в обработке клика ? Никогда раньше не работал ни с промисами, ни с async await, поэтому не совсем понимаю эти механизмы, где там конец кода.
Ответить с цитированием