Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
280 views
in Technique[技术] by (71.8m points)

javascript - Can I track multiple Google Analytics events at once?

I am using Event Tracking on our conversion form to pass the values of a few drop-downs to Google Analytics as events. Our conversion form is an inquiry form for our online degree programs. I only want to pass the values of the fields on form submit, so I have added the following code to the code that runs on successful submission of the form:

 $("#App,#InquiryForm").validate({    
   submitHandler: function (form) {
 $(".button").attr("value", "Please wait...");
 $(".button").attr("disabled", "disabled");

 _gaq.push(
     ['_trackEvent', 'Inq Form Academic Level', 'Academic Level', $('#AcademicLevel').val()],
     ['_trackEvent', 'Inq Form Delivery Time', 'Delivery Time', $('#CourseDeliveryTime').val()],
     ['_trackEvent', 'Inq Form Program Type', 'Program Type', $('#ProgramType').val()],
     ['_trackEvent', 'Inq Form Program', 'Program', $('#ProgramofInterest').val()]
);

 form.submit();
},

The purpose of this is to be able to segment our traffic that converted by what they were interested in. (e.g. What was the browsing behavior of visitors who inquired about our undergraduate degrees vs those that inquired about our graduate degrees).

Unfortunately, only the first event tracking script is running successfully, not the last three (regardless of what order I place them in - the first one is always the only one that is successful).

If you can help me to get this working, that would be fantastic! If not, perhaps some alternate suggestions to get at the data I need?

Thanks

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

I tested pushing multiple events with one push and it worked fine. It may be submitting the form before all the _trackEvents are pushed.

Try adding a setTimeout to the form.submit() to give the _gaq.push time to send all of them.

setTimeout(function(){ form.submit(); }, 200);

Install Chrome and the Google Analytics Debugger. Look in the console (control, shift, j) for the event tracking processing.

enter image description here

If you don't see all of your events tracking there, then something is up maybe with the form values.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...