Задать вопрос
ig0r74
@ig0r74
MODX-разработчик

Как переписать jQuery-код на Vanilla JS?

Как переписать этот jQuery-код на vanilla js?

$(document).on("af_complete", function(event, response) {
    if (response.success) {
        grecaptchaExecute();
    }
});


Вот так почему то не срабатывает:

document.addEventListener("af_complete", function(event, response) {
    if (response.success) {
        grecaptchaExecute();
    }
})
  • Вопрос задан
  • 260 просмотров
Подписаться 1 Простой 5 комментариев
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Фронтенд-разработчик
    10 месяцев
    Далее
  • Skillfactory
    Профессия Веб-разработчик
    12 месяцев
    Далее
  • Яндекс Практикум
    Мидл фронтенд-разработчик
    5 месяцев
    Далее
  • Stepik
    JavaScript с нуля - основы языка и практика для начинающих
    2 недели
    Далее
  • Merion Academy
    Фронтенд-разработчик с нуля
    4 месяца
    Далее
  • Skypro
    JavaScript-разработчик с нуля
    9 месяцев
    Далее
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
  • Skillbox
    JavaScript
    3 месяца
    Далее
Решения вопроса 1
potapchino
@potapchino
Не работает, потому что в первом случае вы слушаете jquery-событие, а во втором - нативное событие, а jquery не может тригерить нативные события. чтобы второй вариант работал, событие нужно тригерить вот так:
document.dispatchEvent(new CustomEvent('af_complete;))
но т.к. судя по всему вы не можете изменить исходники modx, то остается использовать только первый вариант
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Vlad_IT
@Vlad_IT Куратор тега JavaScript
Front-end разработчик
Это кастомное событие, созданное специально под jQuery. Полагаю, это из модуля AjaxForm из ModX. Нет смысла писать это на ваниле, т.к. jQuery все равно уже используется на сайте.
Ответ написан
Ваш ответ на вопрос

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

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