Javascript 如何在提交表单时在Google Analytics上设置事件跟踪?
我试图跟踪用户何时点击联系人表单上的提交按钮。Javascript 如何在提交表单时在Google Analytics上设置事件跟踪?,javascript,forms,google-analytics,Javascript,Forms,Google Analytics,我试图跟踪用户何时点击联系人表单上的提交按钮。 页面的URL不变,它是静态的。 我无法在提交后跟踪不同的URL,唯一的选择是跟踪用户何时点击提交按钮 我需要编辑我的分析帐户吗? 在哪里添加额外的javascript? UA安装正确(analytics.js) 我是GA和javascript的新手,请为我详细介绍一下 谢谢 这有点不合逻辑。即使Url没有更改,也可能会发生一些事情-在发送之前,可能会进行一些表单验证,并且在后台会执行一些操作来发送表单,例如ajax调用 您可以将事件跟踪附加到提交处
页面的URL不变,它是静态的。
我无法在提交后跟踪不同的URL,唯一的选择是跟踪用户何时点击提交按钮 我需要编辑我的分析帐户吗?
在哪里添加额外的javascript?
UA安装正确(analytics.js)
我是GA和javascript的新手,请为我详细介绍一下 谢谢 这有点不合逻辑。即使Url没有更改,也可能会发生一些事情-在发送之前,可能会进行一些表单验证,并且在后台会执行一些操作来发送表单,例如ajax调用 您可以将事件跟踪附加到提交处理程序:
<form onSubmit="ga('send','event','category','action','label')">
<input type="text" id="text" name="text">
<input type="submit">
</form>
但是,这并不能告诉您是否正确处理了数据。为此,您需要使服务器发出成功消息并检查响应:
$( document ).ajaxSuccess(function( event, xhr, settings ) {
if ( settings.url == "formprocessor.php" ) {
if(xhr.responseText.indexOf("success") > -1) {
ga('send','event','Form','Response Received','Form data processed ');
} else {
ga('send','event','Form','Response Received','Form data NOT processed ');
}
}
});
全局ajax事件处理程序附加到文档中—您可以将其放在页面的任何位置,除非调用ajax事件,否则它将不会执行任何操作
同样,这不是生产代码。不要尝试复制和粘贴。
如果你是新手,这肯定有点多,但它至少应该帮助你改进这个问题,看看什么样的事情是可能的。如果你能分享你的表单的Url,我可能会改进答案
这有点不合逻辑。即使Url没有更改,也可能会发生一些事情-在发送之前,可能会进行一些表单验证,并且在后台会执行一些操作来发送表单,例如ajax调用
您可以将事件跟踪附加到提交处理程序:
<form onSubmit="ga('send','event','category','action','label')">
<input type="text" id="text" name="text">
<input type="submit">
</form>
但是,这并不能告诉您是否正确处理了数据。为此,您需要使服务器发出成功消息并检查响应:
$( document ).ajaxSuccess(function( event, xhr, settings ) {
if ( settings.url == "formprocessor.php" ) {
if(xhr.responseText.indexOf("success") > -1) {
ga('send','event','Form','Response Received','Form data processed ');
} else {
ga('send','event','Form','Response Received','Form data NOT processed ');
}
}
});
全局ajax事件处理程序附加到文档中—您可以将其放在页面的任何位置,除非调用ajax事件,否则它将不会执行任何操作
同样,这不是生产代码。不要尝试复制和粘贴。
如果你是新手,这肯定有点多,但它至少应该帮助你改进这个问题,看看什么样的事情是可能的。如果您可以共享表单的Url,我可能会改进答案。手册中有:手册中有:谢谢!,这正是我想知道的,我也在运行两个GA Property实例,onSubmit脚本中的数据是否会将数据发送到这两个属性?否。您需要创建命名跟踪器(stackoverflow上已有一些关于命名跟踪器的帖子)并将调用发送到这两个跟踪器实例。@RzK,使用命名双跟踪器的另一种选择是使用GA插件将数据发送到多个帐户,其优点是您只需要进行一次跟踪调用,并且插件负责将调用发送到两个帐户。例如,David Vallejo已经在他的博客上开始了一个小项目,也许你想帮忙(至少有建议):。谢谢!,这正是我想知道的,我也在运行两个GA Property实例,onSubmit脚本中的数据是否会将数据发送到这两个属性?否。您需要创建命名跟踪器(stackoverflow上已有一些关于命名跟踪器的帖子)并将调用发送到这两个跟踪器实例。@RzK,使用命名双跟踪器的另一种选择是使用GA插件将数据发送到多个帐户,其优点是您只需要进行一次跟踪调用,并且插件负责将调用发送到两个帐户。David Vallejo在他的博客上开始了一个小项目,也许你想帮忙(至少有建议):。
$( document ).ajaxSuccess(function( event, xhr, settings ) {
if ( settings.url == "formprocessor.php" ) {
if(xhr.responseText.indexOf("success") > -1) {
ga('send','event','Form','Response Received','Form data processed ');
} else {
ga('send','event','Form','Response Received','Form data NOT processed ');
}
}
});