Отправка формы на свой ресурс после отправки на приемщик данных Тильды

Есть люди, которые с тильдой работали. Я в js не сильно шарю, отсюда неполное понимание примеров.

Есть js-form-proccess. Мне не понятно, что это такое и какую роль это играет в работе тильды. Т.е. кто и как создаёт на странице js-form-proccess.

Откуда на странице берётся js-form-process?

Для примера, на лендинге не удаётся после отправки формы на приёмщик тильды отправить всё на мой ресурс. Отправкой занимается скрипт, который можно найти по js-form-process.

С другой стороны, на лендинге Всё корректно работает. Отправкой занимается скрипт, который можно найти по js-form-process.

Мне не ясно, откуда берётся js-form-proccess и кто его генерирует. Почему на одних лендингах он есть автоматом, а на других — нет.


Ответы (1 шт):

Автор решения: YakovL

Здесь несколько вопросов в одном, отвечу хотя бы частично, потом можно будет уточнить.

В примере по ссылке js-form-proccess встречается в таком контексте:

$('.js-form-proccess').each(function () {
    $(this).data('success-callback', 'window.mySuccessFunction');
});

здесь $ – экземпляр jQuery, а '.js-form-proccess' – (CSS-подобный) селектор, означающий "элементы с классом js-form-proccess". Для каждого такого элемента (this внутри функции-обработчика) задаётся jQuery-data-свойство success-callback (не нужно вдаваться в то, что это такое, важно лишь, что туда надо поместить свой callback, а движок Тильды его подхватит).

Откуда берутся элементы с классом js-form-proccess? Видимо, Тильда генерит их для каждой формы; как именно (на сервере или динамически на фронте) и по какому условию – не вполне понятно, доки про это вроде ничего не говорят.

Для начала нужно разобраться с тем, генерируются ли элементы js-form-proccess или нет (посмотреть через DOM-инспектор). Если да, может оказаться, что проблема неправильном порядке во времени: Тильда подразумевает, что он будет

  1. создаются элементы js-form-proccess
  2. навешиваются обработчики
  3. Тильда обходит элементы в поисках обработчиков (возможно, уже когда запрос в основной сборщик вернул ответ) и запускает их

Если 2. оказался до 1. или после 3. – обработчик не будет запущен.

→ Ссылка