Dunno2018
@Dunno2018

Яндекс метрика — как настроить цель на отправку формы?

Здравствуйте!
Есть форма:
<form method="post" action="./handlers/contact-square.php" id="first-form" onsubmit="yaCounter50578219.reachGoal('first-form'); return true;">

Цель срабатывает при нажатии на кнопку отправки, даже если форма не заполнена. А нужно, чтобы срабатывала только при отправке формы. Следовательно мне нужно впендюрить этот код
yaCounter50578219.reachGoal('first-form'); return true;
в обработчик формы на тот момент, когда происходит непосредственно отправка. Вопрос как это сделать? Код обработчика:
$('#first-form').validate({
        debug: false,
        onfocusout: true,
        onKeyUp: true,
        rules: {
            chosen_brand: {
                required: true
            },
            number: {
                required: true,
                regexp: /^\+\d{1}\(\d{3}\)\d{3}-\d{2}-\d{2}$/
            }
        },
        messages: {
            chosen_brand: {
                required: "Введите сообщение"
            },
            number: {
                required: "Введите телефон",
                regexp: "Некорректно"
            }
        },
        wrapper: "div",
        errorPlacement: function(error, element) {
            if(element.siblings('.errors_block').length>0){
                element.siblings('.errors_block').html(error[0].textContent);
            }else{
                element.after('<span class="errors_block">'+error[0].textContent+'</span>');
            }
        },
        success: function(element) {                       
            if(element.siblings('.errors_block').length>0){
                element.siblings('.errors_block').remove();               
            }
        }
    });
  • Вопрос задан
  • 1545 просмотров
Пригласить эксперта
Ответы на вопрос 2
используйте ajax. на успешную отправку вешайте цель.

$.ajax({
				url: url,
				type: 'POST',
				data: data,
				success: function (data) {
					yaCounter50578219.reachGoal('first-form');
				},
				error: function (data) {
					console.log('Ошибка: ' + data);
				}
});
Ответ написан
@skygliderus
Excel, HTML, CSS, JS, PHP, adaptive design
Можно и по другому.
Кнопке на отправку состояние :disable по умолчанию. Смена состояния при перемещении фокуса на последнее поле и вводе определённого кол-ва символов.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы