javascript - 如何在没有单独的感谢页面的情况下设置联系表单的 Google Analytics 目标跟踪?

标签 javascript google-analytics onsubmit goal-tracking

如何设置 Google Analytics 来跟踪访问我网站的访问者,这些访问者提交了联系表单,但没有单独的致谢网址?

我在博客和 GA 帮助论坛上看到过发布的代码,但到目前为止还没有弄清楚我应该如何设置目标才能插入代码片段。

在论坛等找到的代码:

onsubmit="pageTracker._trackPageview('/Goa1-Button'); pageTracker._trackEvent('Goals','CLick-Button');"

具体来说,我想了解以下内容:

  • 我会使用哪种目标类型?
  • 如果我将事件命名为 Contact form completions,它会去哪里并适合上面的代码?
  • 上面的代码是否正确,对我有帮助吗?

任何其他建议,以前有人必须这样做吗?

最佳答案

因此,从您在 yahelc 的回答的评论中发布的 URL 看来,您有一个通过 AJAX 提交和返回响应的表单。

此外,您的页面 GA 代码是异步版本,但您问题中的代码是传统的,因此您需要使用异步语法。

在您的页面上,如果访问者没有填写内容,相关区域会以红色突出显示(旁注:如果我填写了,我看不到“您需要填写”或“这是正确的格式”消息没有正确填写表格..你应该考虑添加...)。

您需要确保的主要事情是,只有当访问者成功填写表单时,您才弹出“成功”代码。因此,您真的不想将 GA 代码附加到 onsubmit,因为这会产生误报。只要访问者单击提交按钮,它就会触发,无论他们是否成功填写了表单。

看起来处理表单验证的 javascript 位于您的/custom.js 中,并且您在 custom.js viewsource 的第 163 行具有以下内容:

success: function(response){

                           jQuery(".ajax_form").before("<div class='ajaxresponse' style='display: none;'></div>");

                           jQuery(".ajaxresponse").html(response).slideDown(400);

                           jQuery(".ajax_form #send").fadeIn(400);

                           jQuery(".ajax_form input, .ajax_form textarea, .ajax_form radio, .ajax_form select").val("");

                               }

                            });

这看起来是显示“谢谢”消息的地方,在验证并提交表单之后,因此您应该将 GA“成功”代码放在此函数的某处。

您要插入的代码应如下所示(基于您问题中的代码):

_gaq.push(['_trackEvent', 'Goals', 'CLick-Button']);
_gaq.push(['_trackPageview','/Goa1-Button']);

注意:对于事件跟踪,这会将事件类别设置为“目标”,将事件操作设置为“单击按钮”。您可以将其他可选参数传递给 _trackEvent 以进一步细化。引用GA的event tracker guide更多细节。

至于目标跟踪,如 yahelc 所述,这是在界面中设置的。上面的代码将发送一个页面名称为“/Goa1-Button”的虚拟页面 View ,您将使用此值来设置您的目标。有很多方法可以设定目标。如果您预计稍后会向其添加 URL 参数等,您可以使其与该值完全匹配或从该值开始……(但还要注意,您目前无法根据事件创建目标……这是蹩脚的,但我听说 GA 正在努力最终实现这一目标)。

编辑:显然,如果您使用“新版本”,您实际上可以根据事件设定目标,正如 yahelc 在他的回答评论中提到的那样。不错!

关于javascript - 如何在没有单独的感谢页面的情况下设置联系表单的 Google Analytics 目标跟踪?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8308723/

相关文章:

javascript - 在页面刷新时,解构 Prop 在 componentDidMount 中给出未水化的值

ios - 找不到框架 FirebaseAnalytics

javascript - 使用 onchange 输出生成的链接

javascript - 当按下 Enter 时 onsubmit 不会调用我的函数

javascript - mouseleave 在 block 的交叉点触发

javascript - 您可以更改 html 元素的样式属性的最大数量是多少?

javascript - JSON 中未定义值的尝试/捕获失败 - JavaScript

android - 将 Google Analytics 与 Robolectric(或 "Trying to use SQLite3 in Robolectric")一起使用时出现 SQLException

google-analytics - Google Analytics URL Campaign Builder - 跟踪广播事件?

javascript - React.js : submit form programmatically does not trigger onSubmit event