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

Здравствуйте. Хочу сделать кнопку "Купить в 1 клик" для Minishop2. Я написал

такой код на html:
<form class="buy-1-click-form ms2_form" method="post" id="form_{$_modx->resource.id}">
<input type="hidden" name="id" value="{$_modx->resource.id}">
<input type="hidden" name="price" value="{$_modx->resource.price} ">
<input type="hidden" name="pagetitle" value="{$_modx->resource.pagetitle}">
<input type="hidden" name="count" value="1">
<button type="submit" name="ms2_action" value="cart/add" class="btn buy-1-click-btn">Купить в 1 клик</button>
</form>

И такой на JS:
$('.buy-1-click-form').on('submit', function (e) {
e.preventDefault();
setTimeout(function() {
document.location = window.location.origin + '/cart'
},300);
});

Без таймаута иногда не работает. Но таймаут - это костыль. На одних ПК он нужен поменьше, на других побольше.

Как мне сделать это без таймаута?

В Minishop2 есть callback'и, например:
miniShop2.Callbacks.Cart.add.response.success

Но в них нельзя получить объект, по которому кликнули. Или даже форму. А у меня, помимо кнопки "Купить в 1 клик", есть и обычные кнопки. Так что callback - не вариант.

Мне надо менять стандартные js файлы? Или есть более удобное решение?

8 ответов

14 просмотров

https://modxguru.ru/blog/solutions/zakaz-v-1-klik-na-minishop2.html

Evg- Автор вопроса
Александр
https://modxguru.ru/blog/solutions/zakaz-v-1-klik-...

Мне нужно просто при нажатии на кнопку перебросить пользователя в корзину.

Evg
Мне нужно просто при нажатии на кнопку перебросить...

можно сделать кнопку стандартную "Добавить в корзину" и в js на колбэк miniShop2.Callbacks.Cart.add.response.success = funtion(){ тут перенаправить на страницу Корзины };

Evg- Автор вопроса
Dan
можно сделать кнопку стандартную "Добавить в корзи...

Колбэк вешается не на кнопку, а на событие - добавление в корзину. С ним у меня всегда будет редирект в корзину. Даже если я нажал кнопку "Добавить в корзину". А мне нужно, чтобы редирект был только тогда, когда я нажал кнопку "Купить в 1 клик".

Evg
Колбэк вешается не на кнопку, а на событие - добав...

А я где то написал про колбэк на кнопку?)

Evg- Автор вопроса
alexey1m
Ты обработай кнопку

А как узнать, если не моя кнопка? В атрибуте колбэка нет target

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

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

тоесть, указав return eax, сгенерируется никому ненужная инструкция mov eax,eax ?
Aiwan \ (•◡•) / _bot
24
читать файл максимально быстро? странный вопрос))
zamtmn
53
Приветствуем всех! Устали без проектов? Если вы программист и хотите получать стабильные заказы, компания Elif предлагает вам недельный курс по поиску проектов и их ведению. ...
Elif
1
А чего сейчас в моде вместо Error для эксепшенов? А то я тут внезапно узрел что он не рекомендуется :) У Try::Tiny какой-то совершенно ужасный синтаксис если надо конкретные э...
Denis F
19
Привет. Сразу скажу, что на C/C++/Rust я не пишу, но тем не менее возникла потребность дебага C/C++/Rust кода. Суть: есть серверное приложение, которое периодически ведёт себ...
ninekeem 🐳
4
а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
всем привет! углубившись в плюсы и начав изучать реверсинг понял, что без асм'а никуда со своими высокоабстрактными представлениями начал изучать механизмы асма, и не совсем п...
9
или вы считаете муит дает знание?
супер_лох_3000 альфа версия
12
значить например он учился в СДУ то получается он особенный?)
Asets Serikov
11
А кто такой мужчина в твоем понимании Азиз?
who?です 🐈
11
Карта сайта