@ArtYarm

Что не так?(Uncaught (in promise) SyntaxError: Unexpected token < in JSON at position 0)?

вот код для отправки данный с формы

document.addEventListener('DOMContentLoaded', function () {
  const form = document.getElementById('form');  
  form.addEventListener('submit', formSend)

  async function formSend(e) {
    e.preventDefault();

    let error = formValidate(form);
  
    let formData = new FormData(form); 
    if (error === 0){
      form.classList.add('_sending');
        let response = await fetch('mail.php', {
          method: 'POST',
          body: formData
        });
        if (response.ok){
          let result = await response.json();
          alert(result.message);
          form.reset();
          form.classList.remove('_sending');
        } else {
          alert('Ошибка');
          form.classList.remove('_sending');
        }
    } else{
      alert('Заполните все поля')
    }
  }
  
  function formValidate(form) {
    let error = 0;
    let formReq = document.querySelectorAll('._req');

    for (let index = 0; index < formReq.length; index++) {
      const input = formReq[index];    
       formRemoveError(input);

       if (input.classList.contains('_email')){
          if(emailTest(input)){
            formAddError(input)
            error++;
          }
       }else if(input.getAttribute("type") === "checkbox" && input.checked === false){
        formAddError(input)
        error++;
       } else{
         if (input.value === ''){
            formAddError(input)
            error++;
         }
       }
    }
    return error;
  }

    function formAddError(input) {
      input.parentElement.classList.add('_error');
      input.classList.add('_error')
    }
    function formRemoveError(input) {
      input.parentElement.classList.remove('_error');
      input.classList.remove('_error')
    }
    function emailTest(input) {
      return !/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,8})+$/.test(input.value)
    }
});

Выдает ошибку в 5f9aeefc9e20f979250349.png
  • Вопрос задан
  • 70 просмотров
Пригласить эксперта
Ответы на вопрос 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
От сервера приходит не JSON.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Artezio Нижний Новгород
от 130 000 до 180 000 ₽
Artezio Москва
от 160 000 до 220 000 ₽
Sportrecs Москва
от 150 000 до 200 000 ₽
26 нояб. 2020, в 21:08
5000 руб./за проект
26 нояб. 2020, в 20:55
5000 руб./за проект
26 нояб. 2020, в 20:36
5000 руб./за проект