2015-10-16 183 views
2

我在Marketo中构建了一个简单的表单着陆页。表单使用Ajax。传统的表格触发器将不起作用,历史变更也不会起作用。如此简单的事情就是变得过于复杂。在Google跟踪代码管理器中跟踪Ajax表单

点击提交按钮正在跟踪,但这是不准确的,因为表单需要验证。

任何有关在成功提交表单时获取标签的想法,以便我可以跟踪Google Analytics中的表单索引?

非常感谢!

+0

您使用的是表单2.0吗? – measureallthethings

+0

看看使用jquery ajaxComplete函数。 – nyuen

回答

1

检查:

  1. 形式提交火灾有效提交浏览器的事件。

  2. 此事件必须传播到文档节点。

根据您的需要,您需要在自定义事件侦听器中使用JavaScript代码在Google跟踪代码管理器中创建自定义HTML标记。实现取决于是否没有表单提交事件(1)或事件没有传播(2)。

阅读题目不错的博客文章由厮磨阿加瓦:

http://www.simoahava.com/analytics/track-form-engagement-with-google-tag-manager/

+0

非常感谢您的回复。根据我对文章的理解,需要对表单页面进行更改。我们无法访问,也无法期望有任何更新。他们有没有其他的方法可行? – SMG

+0

@SMG,您可以使用Google跟踪代码管理器中的自定义HTML代码来包含您的自定义JavaScript代码。 – Alex

1

假设你使用的是表单2.0,然后使用文档此处提供:

http://developers.marketo.com/documentation/websites/forms-2-0/

以下设置为我工作。在跟踪代码管理器中创建一个像这样的自定义HTML标记:

<script> 
MktoForms2.whenReady(function (form) { 
    form.onSubmit(function(){ 
     dataLayer.push({ 
      'event': 'hello', 
      'message': 'world' 
     }); 
    }); 
}); 
</script> 

创建一个触发器,对您的情况有意义。我们在Marketo着陆页上使用这些表单,因此,只要网址与我们用于着陆页的模式相匹配,就会设置该标记。

在表单提交,你应该可以看到这个被推到了dataLayer(我不得不疯狂地打我的键盘上的按键esc从刷新,所以我可以确认这是被推到了dataLayer保持页)。

该文档显示您还可以使用onSuccess作为事件。

此设置受以下幻灯片#46启发:http://www.slideshare.net/stijnheijthuijsen/marketo-user-group-nl-20150209-hands-on-google-analytics

+0

感谢您的支持。有没有更简单的方法来实现跟踪,比如历史更改? – SMG

+0

由于Marketo表格的构建方式,不存在任何更简单的方法。 – measureallthethings

相关问题