我们有一个客户无法将表单从POST切换到GET,此时我们正在通过与“提交”按钮关联的事件跟踪表单提交。
但是,这会跟踪一个“已完成”的表单,即点击提交但可能会返回错误的表单的人。
通常情况下,我要么AJAX化表单并阻止提交表单,直到JS验证完成,或者使用唯一的“表单完成”URL并跟踪作为目标(以及带有on DOM加载JS的事件触发事件跟踪),但在这种情况下,这不是一个选项。
如何在此方案中将事件与“表单成功”内容联系起来?我知道我可以将事件绑定到图像加载,但我需要动态生成图像名称以防止缓存影响分析。
我可以将事件绑定到POST中的文本吗?
答案 0 :(得分:0)
在服务器端验证表单后,您只需输出JavaScript以及告知Google Analytics跟踪提交事件的下一个响应。
编辑:我刚注意到你说这不是一个选项。
答案 1 :(得分:0)
你能输出一个包含值的隐藏字段,意味着表单已成功提交,然后使用jQuery watch为该字段返回成功值吗?然后javascript重定向到另一个页面?
所以在准备好文件时这样做:
<强>的jQuery 强>
if ($("#MyHiddenField").val() == 'success') {
document.location = "SOME SUCCESS URL THAT ANALYITICS CAN TRACK";
}
或者,只需让jQuery监视页面内容中的某些成功指示(如“谢谢”或其他短语),然后重定向。
答案 2 :(得分:0)
您还可以根据javascript事件有条件地调用Google Analytics跟踪器代码。 See this article
仅在表单提交成功时在您的页面上包含此javascript或使用我在其他awnser中的示例使用jQuery调用它:
pageTracker._trackPageview("/homepage/link1");
页面不会被重定向,但Google Analytics会将其记录为用户实际访问该页面。