Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 22.07.2022, 20:40
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,583

document.addEventListener('DOMContentLoaded', () => {
  document.querySelector('form').addEventListener('submit', async (event) => {
    event.preventDefault();

    const { currentTarget: form } = event;
    const { method, action } = form;

    const response = await fetch(action, { method, body: new FormData(form) });
    const json = await response.json();

    if (json.url) {
      window.location.href = '/' + json.url;
    } else {
      alert(json.status + ' - ' + json.message);
    }    
  })
})
__________________
29375, 35
Ответить с цитированием
  #12 (permalink)  
Старый 22.07.2022, 21:16
Аватар для Chile
Аспирант
Отправить личное сообщение для Chile Посмотреть профиль Найти все сообщения от Chile
 
Регистрация: 10.02.2016
Сообщений: 46

Сообщение от Aetae Посмотреть сообщение
document.addEventListener('DOMContentLoaded', () => {
  document.querySelector('form').addEventListener('submit', async (event) => {
    event.preventDefault();

    const { currentTarget: form } = event;
    const { method, action } = form;

    const response = await fetch(action, { method, body: new FormData(form) });
    const json = await response.json();

    if (json.url) {
      window.location.href = '/' + json.url;
    } else {
      alert(json.status + ' - ' + json.message);
    }    
  })
})
К сожалению, не работает

Может быть я что-то не то делаю. Мне нужно как-то адаптировать этот код или просто заменить текущий?
Ответить с цитированием
  #13 (permalink)  
Старый 22.07.2022, 22:15
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,108

Сообщение от Chile
просто заменить текущий?
Ответить с цитированием
  #14 (permalink)  
Старый 22.07.2022, 22:25
Аватар для Chile
Аспирант
Отправить личное сообщение для Chile Посмотреть профиль Найти все сообщения от Chile
 
Регистрация: 10.02.2016
Сообщений: 46

Всё равно не работает )

Просто вот это выводится на белой странице:

{"status":"success","message":"post added successfully"}

т. е. результат пэхэпэшной валидации:

if ($titleLen < 10 or $titleLen > 100) {
$this->error = 'name should be from 10 to 100 char';
return false;


Не то пишу. Выводится сообщение об успехе:

$this->view->message('success', "post added successfully");

Последний раз редактировалось Chile, 22.07.2022 в 22:31.
Ответить с цитированием
  #15 (permalink)  
Старый 24.07.2022, 23:21
Аватар для Chile
Аспирант
Отправить личное сообщение для Chile Посмотреть профиль Найти все сообщения от Chile
 
Регистрация: 10.02.2016
Сообщений: 46

Проверил всё ещё раз, нигде ничего не пропущено в коде, но всё равно не хочет работать

Точка с запятой пропущена была. Вопрос снят. Всем огромное спасибо!

Последний раз редактировалось Chile, 24.07.2022 в 23:26.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
GSAP слайдер без jquery возможно ли? Aleksanderj Библиотеки/Тулкиты/Фреймворки 5 19.09.2015 03:05
Можно ли изменить адресную строку без перезагрузки страницы (не якорь) Papa Общие вопросы Javascript 2 08.05.2010 03:45
Можно ли получить объект без названия SunnyDay Общие вопросы Javascript 5 25.02.2010 19:26
как сделать аналог jquery.load без jquery? vvsh AJAX и COMET 5 05.06.2009 22:40
Помогите решить задачу vkg Общие вопросы Javascript 1 20.02.2008 11:59