169 похожих чатов

Типа, при клике отправляется запрос по адресу с нужным методом?

36 ответов

27 просмотров

да

i7-4n Автор вопроса
Ghost
да

тогда просто отследить клик по документу если есть такой атрибут, то превентим дефолт отправляем запрос

i7 4n
тогда просто отследить клик по документу если есть...

Я так и пытался, но ничего не вышло: for (const el of document.querySelectorAll('a[data-method]')) { el.addEventListener('click', e => { const method = el.dataset['method'] || 'get'; if (method !== 'get') { e.preventDefault(); axios({ method: method, url: el.getAttribute('href'), }) } }) }

i7-4n Автор вопроса
i7-4n Автор вопроса
Ghost
Я так и пытался, но ничего не вышло: for (const e...

никаких ошибок, ничего не выдаёт? что конкретно не работет?

i7 4n
никаких ошибок, ничего не выдаёт? что конкретно не...

Мой метод после запроса возвращает редирект, а страница не перезагружается

i7-4n Автор вопроса
Ghost
Мой метод после запроса возвращает редирект, а стр...

а, ну ещё бы, а с чего ей перезагружаться самой при отправке запроса? посмотрите теперь в аксиос и сделайте редирект, если надо

i7-4n Автор вопроса
Ghost
Мой метод после запроса возвращает редирект, а стр...

или можете сделать фейковую форму по клику и отправить её

i7 4n
или можете сделать фейковую форму по клику и отпра...

Я вообще сначала и клепал формы, но понял что это плохой вариант, когда мне понадобилось сделать такую кнопку внутри другой формы...

i7-4n Автор вопроса
i7 4n
а, ну ещё бы, а с чего ей перезагружаться самой пр...

Все равно не понял :( Я добавил обработчики then и catch, но туда приходит ошибка оттого что после редиректа идет по непонятной причине запрос страницы DELETE методом, а она method not allowed

Ghost
Все равно не понял :( Я добавил обработчики then и...

во вкладке нетворк все правильно? на верный эндпоинт уходит запрос?

Ghost
Я так и пытался, но ничего не вышло: for (const e...

if (method !== 'get') { e.preventDefault(); это предотвращает перезагрузку страницы

🏴‍☠️
if (method !== 'get') { e.preventD...

Я в курсе. Мне же надо отправить запрос заданным методом, а не GET

🏴‍☠️
if (method === 'get') { return; }

Он и так выйдет из метода. Зачем?

Ghost
Он и так выйдет из метода. Зачем?

у тебя же событие клик висит на ссылке? ты предотвращаешь дефолтное поведение после клика - перезагрузка страницы, но не отправка

🏴‍☠️
у тебя же событие клик висит на ссылке? ты предотв...

Ты сам то понял что сказал? Я нет... По клику происходит отправка запроса выбранным методом, если он не GET (иначе просто переход по ссылке). Так и задумано.

Ghost
Ты сам то понял что сказал? Я нет... По клику прои...

аа все, я с отправкой формы перепутал

Ghost
Ты сам то понял что сказал? Я нет... По клику прои...

а то что я раньше написал, что в цикле у тебя и другая кнопка может срабатывать ты это продебажил?

🏴‍☠️
а то что я раньше написал, что в цикле у тебя и др...

Что ты имеешь ввиду? Цикл просто вешает обработчики. Кликаю то я одну кнопку

i7-4n Автор вопроса
Ghost
Что ты имеешь ввиду? Цикл просто вешает обработчик...

это не в тему обсуждения, но я в любом случае за делегирование

i7-4n Автор вопроса
Ghost
Что? О_о

как я и писал изначально. один обработчик клика на весь документ

Ghost
Что ты имеешь ввиду? Цикл просто вешает обработчик...

так я хочу детали услышать, то что ты предоставил инфу - из этого мало что понятно

Ghost
Что? О_о

может у тебя события всплывают и триггерят другую ссылку

🏴‍☠️
так я хочу детали услышать, то что ты предоставил ...

Какие именно детали? Ты спрашивай конкретно. Я не понимаю что тебя интересует

Ghost
Ничего там не триггерит. Что за бред...

тогда если ты знаешь, то что тогда у тебя второй delete отправляет?

🏴‍☠️
тогда если ты знаешь, то что тогда у тебя второй d...

Вот в этом и вопрос. Откуда он берется. Второй delete.

i7-4n Автор вопроса
Ghost
Это как?

document.addEventListener('click', async (event) => { const { target } = event; if (!target.matches('a[data-method]')) return; const method = target.dataset['method'] || 'get'; const url = target.href; if (method === 'get') return; const response = await axios({ method, url }); const fetchedUrl = response.request.res.responseUrl; if (fethchedUrl !== window.location) { window.location = fethchedUrl; } }); типа того, мб

i7 4n
document.addEventListener('click', async (event) =...

Какая-то дичь... Зачем? О_о Ловить все клики в документе не экономично. Будет тормозить.

i7-4n Автор вопроса

Похожие вопросы

Обсуждают сегодня

30500 за редактор? )
Владимир
47
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
вы делали что-то подобное и как? может есть либы готовые? увидел картинку нокода, где всё линиями соединено и стало интересно попробовать то же в ddl на lua сделать. решил с ч...
Victor
8
Подскажите пожалуйста, как в CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); получить наз...
A Z
7
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
1
Он в одиночку это дело запилил или была какая-то команда?
Aquinary
12
~ 2m21s  nix shell github:nixos/nixpkgs#stack ~  stack ghc -- --version error: … while calling the 'derivationStrict' builtin at /builtin/derivation.nix:...
Rebuild your mind.
6
Всем привет, нужна как никогда, нужна помощь с IO в загрузчике. Пишу в code16 после установки сегментных регистров, пишу вывод символа. Пробовал 2 варианта: # 1 mov $0x0E, %a...
Shadow Akira
14
Карта сайта