Почему код внутри блока then не выполняется и попап не открывается?

Добрый день. Что может быть причиной игнорирования кода, который открывает и закрывает попап после успешного запроса? В коде намечено, что после успешного запроса открывается попап и через 2 секунды закрывается, но этот код не выполняется. Что может быть причиной этой проблемы?

```javascript
myForm.addEventListener("submit", function (event) {
    event.preventDefault();
    var form = new FormData(myForm);

    fetch("form-send.php", {
        method: "POST", 
        body: form 
      })
      .then((response) => {
        modal.classList.add('open')
        setTimeout(() => {
          modal.classList.remove('open')
        }, 2000)
        return response.json()
      })
      .then((data) => { 
        console.log(data); 
      })
      .catch((error) => {
        console.error(error);
      });
  });
```
  • 22 ноября 2023 г. 17:39
Ответы на вопрос 1
Эта проблема может быть вызвана несколькими возможными причинами:

1. Проверьте, что вы правильно указали селектор для модального окна. Убедитесь, что переменная `modal` содержит ссылку на элемент с классом "open".

2. Убедитесь, что классы "open" добавляются и удаляются корректно. Проверьте, есть ли у вас стили для этих классов, и что они задают нужное поведение для попапа.

3. Проверьте, что функция `fetch` успешно отправляет запрос и получает ответ от сервера. Убедитесь, что путь к файлу "form-send.php" указан правильно и сервер возвращает ожидаемый ответ.

4. Проверьте, нет ли ошибок в консоли браузера. Возможно, есть какие-то другие ошибки в коде, которые могут привести к проблеме.

Если с этими проверками все в порядке, то проблема может быть в другой части кода, возможно, что-то блокирует выполнение кода внутри блока `then`. Проверьте, нет ли других событий или обработчиков событий, которые могут помешать выполнению этого кода.
Похожие вопросы