@IgorRastarov

Как настроить яндекс цель в Ajax форме?

Всем привет. У меня есть обычная форма обратной связи на битриксе. Я хочу поставить яндекс цель после спешной отправки формы. Форма передаются аяксом
template.
<?if(strlen($arResult["OK_MESSAGE"]) > 0){?>
	<div class="mf-ok-text"><?=$arResult["OK_MESSAGE"]?></div>
<?}else{?>
<form action="<?=POST_FORM_ACTION_URI?>" method="POST">
<?=bitrix_sessid_post()?>
	<fieldset>
		<div><span><?=$arResult["ERROR_MESSAGE"]["ERR_NAME"]?></span></div>
		<label for="popup-online-name">Имя:<span>*</span></label>
		<input type="text" name="user_name" id="popup-online-name" value="<?=$arResult['AUTHOR_NAME']?>"/>
	</fieldset>
	<fieldset>
		<div><span><?=$arResult["ERROR_MESSAGE"]["ERR_COMPANY"]?></span></div>
		<label for="popup-online-usluga">Компания:</label>
		<input type="text" name="company" id="popup-online-company" value="<?=$arResult['COMPANY']?>"/>
	</fieldset>
	
	<input type="hidden" name="PARAMS_HASH" value="<?=$arResult["PARAMS_HASH"]?>">
	<input id="SUBMIT_ORDER" type="button" name="submit" value="Отправить">
</form>
<?}?>

Аякс:
$('.order').click(function(){
		$.ajax({
			type: "POST",
			url: "/ajax/ajax_product.php",
			beforeSend: function () {
				$('.o-content').empty();
			},
			success: function (data) {				
					$('.o-content').append(data);
					$('#SUBMIT_ORDER').click(sendSubmit);
				  	$('.popup-online').fadeIn(300);
					$('.modalWindow').fadeIn();
			}
		});
	  });

Нужен именно onsubmit.
Делала так:
1.
<form action="<?=POST_FORM_ACTION_URI?>" method="POST" onsubmit="yaCounterXXXXX.reachGoal('Order'); return true;">
не работает
2.
<input id="SUBMIT_ORDER" type="button" name="submit" value="Отправить" onsubmit="yaCounterXXXXX.reachGoal('Order'); return true;">
не работает
3.
$('.order').click(function(){
		$.ajax({
			type: "POST",
			url: "/ajax/ajax_product.php",
			beforeSend: function () {
				$('.o-content').empty();
			},
			success: function (data) {				
					$('.o-content').append(data);
					$('#SUBMIT_ORDER').click(sendSubmit);
                                        yaCounterXXXXX.reachGoal('Order'); return true;
				  	$('.popup-online').fadeIn(300);
					$('.modalWindow').fadeIn();
			}
		});
	  });
- срабатывает только на клик
4. В первых строчках писал
<?if(strlen($arResult["OK_MESSAGE"]) > 0){?>
	<div class="mf-ok-text"><?=$arResult["OK_MESSAGE"]?></div>
<script>
yaCounterXXXXX.reachGoal('Order'); return true;
</script>
<?}else{?> ..........
- не работает.
Помогите, пожалуйста.
  • Вопрос задан
  • 2924 просмотра
Пригласить эксперта
Ответы на вопрос 2
Rema1ns
@Rema1ns
и так сойдет
$('body').on('submit', 'ваша форма',  function(){
yaCounterXXXXX.reachGoal('Order'); 
})
Ответ написан
babarun
@babarun Куратор тега 1С-Битрикс
Безумный план моих идей в руках больных людей
А почему у вас на событие success после аяксного вызова идёт отправка формы?

success: function (data) {				
          $('.o-content').append(data);
          $('#SUBMIT_ORDER').click(sendSubmit);
          ...
}
Ответ написан
Ваш ответ на вопрос

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

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