【问题标题】:Google Analytics event tracking -Contact Form Submit谷歌分析事件跟踪 - 联系表提交
【发布时间】:2014-11-25 15:00:59
【问题描述】:

我正在尝试跟踪用户何时单击提交表单按钮并发送联系信息。我在联系页面上有这个代码:

<input type="submit" value="Send" class="btn big btn_submit_form" onClick="ga('send', 'event', { eventCategory: 'Contact', eventAction: 'Information Request', eventLabel: 'Contact Form'});">

我正在使用 Universal Analytics。

在我的 Google Analytics(分析)帐户中,我的目标描述名称为 Contact Form Submit,目标类型为事件。活动条件如下:

  • 类别 - 等于 - 联系人
  • 操作 - 等于 - 信息请求
  • 标签 - 等于 - 联系表

Value 字段留空。

我已将“使用事件价值作为转化的目标价值”设置为是。

但是,Google Analytics(分析)似乎并未跟踪该事件。知道如何解决这个问题吗?

谢谢。

【问题讨论】:

  • 你能在实时报告中看到事件吗?
  • 不,它甚至不会出现在行为 -> 事件中。
  • 你能分享你的网站吗?我看不出代码有什么问题。所以你触发你的事件,然后立即检查实时报告? (RT 报告的窗口为 30 分钟)。它至少在 24 小时内不会出现在标准报告中,在此期间需要处理数据。
  • 很遗憾,我无法共享该网站(因为它不是我的),是否有任何可能的答案来说明它为什么不起作用?
  • 不确定,但您可以检查实时报告中的其他内容,例如您自己的访问,以排除分析可能根本不起作用。不过,请务必在访问您的页面后立即查看报告。

标签: google-analytics


【解决方案1】:

这里最可能的问题是您的页面在事件命中有时间发送之前被卸载。当您在网页上提交表单时,大多数浏览器将停止执行 JavaScript 并开始加载表单的 action 属性指向的任何新页面。

一般的解决方法是在表单的 submit 事件上调用 preventDefault,等待命中成功发送到 Google Analytics,然后手动重新触发表单提交。

这可能是这样的(注意:为了简单起见,我使用 jQuery):

$('#my-form').on('submit', function(event) {
  // Prevent the browser's default form submission action.
  event.preventDefault();

  ga('send', 'event', {
    eventCategory: 'Contact',
    eventAction: 'Information Request',
    eventLabel: 'Contact Form',
    hitCallback: function() {
      $('my-form').trigger('submit');
    }
  });
});

上述代码中的关键部分是hitCallback函数,当GA从事件命中信标返回成功时调用该函数。

【讨论】:

    【解决方案2】:

    也许尝试将事件更改为表单提交,而不是按钮单击:

    <form onSubmit="ga('send', 'event', { eventCategory: 'Contact', eventAction: 'Information Request', eventLabel: 'Contact Form'});">
    

    可以通过点击提交按钮以外的其他方式提交表单(例如在输入字段中按回车键)

    此外,根据我的经验,跟踪几乎每次都会正确发布,即使您没有在事件上调用 preventDefault。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-09-18
      • 1970-01-01
      • 2016-05-21
      • 1970-01-01
      • 2014-02-15
      相关资源
      最近更新 更多