Нужна помощь по jQuery + convead (сервис событий)

Рейтинг: 0Ответов: 1Опубликовано: 12.01.2023

Нужна помощь. У меня есть скрипт в jQuery (insales), который считывает поле input. Есть сторонний сервис convead, который должен получать событие, по ключу. Скрипт срабатывает (проверял alert'ами на самом сайте insales). Но данные, записанные в input не отправляются. Что я делаю не так, кто может подсказать?

Скрипт на стороне jquery:

<script>
    $(document).on('input', '#client_phone', function() {
        if ($(this).val().length == 17) {
            var value = ($(this).val());
            convead('Event', {key: 'update_info'}, { phone: value });
    }
    })
</script>

Немного изменил, данные сохраняются в массиве, но как его отправить?:

    <script>
    var Arr = [];
    $(document).on('input', '#client_phone', function() {
        if ($(this).val().length > 0) {
            val = this.value;
            Arr.push(val);
        }
      if (Arr.length == 10) {
        <code><code>convead('Event', {key: 'update_info'}, { phone: Arr[9]});
    //alert(Arr[9]);
}
    })
</script>

Событие на стороне Convead

Ответы

▲ 0

Так работает:

<script>
    var Arr = [];
    $(document).on('input', '#client_phone', function() {
        if ($(this).val().length == 16) {
            val = this.value;
            Arr.push(val);
            if (Arr.length = 6){
                thisVal = Arr[0];
                newVal = thisVal.replace(/[-+()\s]/g, '');
convead('event', 'update_info', {key:'update_info'}, {phone:newVal});
            }
        }});

</script>

Также в самом сервисе добавляем событие - "update_info"

Либо вот такой вариант, но нужно настраивать:

<script>
// Функция захвата телефона
function bind_find_phone(input_id) {
  if (typeof ConveadSettings !== 'undefined') {
    if (ConveadSettings.visitor_info.phone) {
      return;
    }

    input = document.getElementById(input_id);
    ConveadDOMEvent.add(input, 'blur', function() {
      if (!input.value || ConveadSettings.visitor_info.phone) {
        return;
      }

      if (input.value.length > 10) {
        ConveadSettings.visitor_info.phone = input.value;
        ConveadClient.event_tracker.send_event('update_info', {}, ConveadSettings.visitor_info);
      }
    });
  }
}

// Применение функции на элемент с переданным ID
bind_find_phone('#client_phone')
</script>

Возможно это кому-нибудь пригодится.