Mam pytanie, co robię źle? Dlaczego skrypt nie działa?
(Bez async i wiersza await... działa)


  1. async function win_open1() {
  2. var form = document.getElementById('form');
  3. form.addEventListener('submit', function(e) {
  4. e.preventDefault();
  5.  
  6. if (document.getElementById("vb52").checked == true)
  7. {
  8. var href = document.getElementById("va").value + document.getElementById("vb52").value + document.getElementById("vc").value + document.getElementById("vd").value + document.getElementById("ve").value + document.getElementById("vf").value + document.getElementById("vg").value
  9.  
  10.  
  11. window.open(href,"_blank");
  12. } else {}
  13.  
  14. await new Promise(r => setTimeout(r, 3000));
  15.  
  16. if (document.getElementById("vb53").checked == true)
  17. {
  18. var href = document.getElementById("va").value + document.getElementById("vb53").value + document.getElementById("vc").value + document.getElementById("vd").value + document.getElementById("ve").value + document.getElementById("vf").value + document.getElementById("vg").value
  19.  
  20.  
  21. window.open(href,"_blank");
  22. } else {}
  23.  
  24. await new Promise(r => setTimeout(r, 3000));
  25. window.location.reload();
  26. });
  27. }



Moim celem jest realne zatrzymanie skryptu na 3 sekundy i wykonanie dalej po tym czasie.

no cóż, sam znalazłem w końcu .... błąd był w złym umieszczeniu "async"

tak poprawnie
  1. function win_open1() {
  2. var form = document.getElementById('form');
  3. form.addEventListener('submit', async function(e) {