2016-03-11 2 views
0

Так кто-то из моего класса пришел ко мне с вопросом, говоря, что они за слово в слово делают то, что учитель спросил, но результат, который они ищут, не происходит. Просто какой-то простой код ... но курс, который она делает, старше, поэтому я не уверен, что код, используемый преподавателем, устарел или просто ошибочен.Google analtic on submit push

В основном, когда пользователь нажимает кнопку, событие должно быть нажато, но это не так. Я не знаю, что сказать, и они не получают ответ, который они ищут. Is onsubmit = "_ gaq.push()" все еще правильный способ сделать это?

<body> 
<h2>Get our Newsletter!</h2> 

<form method="post" action="newsletter.php"> 
<div> 
Name: 
<br /> 
<input type="text" name="name" value="" size="30" /> <br /> 
<br /> 
Email:<br /> 
<input type="text" name="email" value="" size="30" /> <br /> 
<br /> 
<input type="hidden" name="message" value="success" /> 
<input type="submit" value="Sign Up Now!" class="submit" onsubmit="_gaq.push(['_trackPageview', '/virtual/submit/']);" /> <br /> 
<br /> 
</div> 
</form> 

</body> 
<script> 
    (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ 
    (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), 
    m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) 
    })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); 

ga('create', 'UA-74879630-1', 'auto'); 
ga('send', 'pageview'); 

</script> 
</html> 

ответ

0

No.

_gaq был старый ga.js модуль, который в настоящее время не рекомендуется. Кажется, что вы загружаетесь в новую библиотеку analytics.js, которая использует другой API для отправки событий.

Так вы хотите изменить свой код, чтобы использовать new API:

<input type="submit" value="Sign Up Now!" class="submit" onsubmit="ga('send', 'pageview', '/virtual/submit/');" /> 

Обратите внимание, что ваша аналитика код не может добиться успеха, прежде чем форма представляет. Если вы хотите быть уверенным, что событие отслеживается, вы должны задержать отправку формы с помощью JavaScript, чтобы удерживать до тех пор, пока событие не будет отслеживаться.

+0

Спасибо, что я думал и ожидал. Исходный код был примерно с 2012-2013 года, поэтому, по крайней мере, я могу рассказать им и указать им в правильном направлении и документы для обзора ... и не использовать старую библиотеку старых. – SolidFire