Применить ajax только к некоторым формам
Звучит наверное коряво, но суть такова. Есть обработчик форм, который препятствует перезагрузке страницы после их отправки. Но скрипт поиска не может работать без перезагрузке (в моей архитектуре). Хотелось бы, чтобы остальные формы работали без перезагрузки, т. е. все, кроме формы поиска. Наверное можно и форму поиска сделать без перезагрузки, но на это ума у меня точно не хватит. Вот такой скрипт:
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);
}
});
});
Может быть как-то указать селектор, типа класса? Но я не знаком с синтаксисом. Прошу помощи.
Источник: Stack Overflow на русском