Клуб Яндекс.Метрики

Трудности в настройке цели

Пост в архиве.

Здравствуйте! Надеюсь на помощь в решении следующей проблемы. Имеется одностраничный сайт site.com с формой отправки заявки и кнопкой "Отправить". Переход на отдельную страницу при успешной отправке заявки не производится, просто всплывает надпись "Ваша заявка отправлена". При незаполнении всех обязательных полей и попытке отправить заявку, высвечивается надпись "Введите...". Т.е. нажатие кнопки не всегда приводит к отправке заявки, а только в тех случаях, когда всё верно заполнено и всплывает соответствующая надпись. Вопрос - как можно настроить цель на успешную отправку заявки?

Если это поможет, вот фрагмент кода формы:

                      <form action="" method="POST" id="sform">
                          <label>Ваше имя:</label>
                          <input type="text" id="fname" name="yname"/>
                          <span class="error" id="name_error">* Введите ваше имя</span
                           ............................................................
                          <div id="divider"></div>
                          <input type="submit" name="submit" id="send" value=""/>
                          <div id="mail_sucsess" class="sucsess">Ваша заявка успешно отправлена.</div>
                          <div id="mail_fail" class="error">Опс! Что-то пошло не так. Попробуйте отправить сообщение заново.</div>
                      </form>

С нетерпением жду ответа. Спасибо.
6 комментариев

Интересно а код для отправки данных где находится? Если он на этой же странице то это не особо правильно с точки зрения web программирования. В любом случае нужно плясать от начало работы этого кода.

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

Ваш кусок кода не показал, каким образом идет валидация и отправка формы - поэтому сложно дать универсальный совет. Но допустим, программист был молодец, и показ блока "Ваша заявка успешно отправлена" означает, что данные на 100% отправились.

 

Примерно такой код можно попробовать вместо первой строчки вашего куска:

 

Скрипт ждет 1 секунду после нажатия кнопки и затем проверяет, всплыл ли блок сообщения об успешности отправки данных. Если да, то отправляет цель в Метрику.

Жирненьким выделены номер вашего счетчика, наименование нужной цели в Метрике, и задержка в миллисекундах после попытки отправки формы - задержка, чтоб успел отработать валидатор формы и показалось сообщение об успешности отправки данных.

 

PS: пусть поправят старшие товарищи, если скрипт набросал неправильно - негде проверить.

 

Если у тебя код для обработки события по отправке формы в отдельном файле - то это элементарно..

Если в этом же - ответ от пользователя "Вик"

как-то все сложно вы описали

 

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

Просили "на примере указанного фрагмента", я не хотел так сложно, меня заставили! :-D