谷歌通用分析表格提交
问题描述:
我正在尝试编写一个JavaScript代码跟踪表单提交,给访问者带来最少的不便。我试图编程的流程就是这样。谷歌通用分析表格提交
- 用户点击提交或按下回车提交表单(留下相关的评论)。
- 附加表单提交处理程序捕获此事件并阻止表单提交。
- 脚本发送谷歌分析事件,在命中回调(我不想用超时方法),该处理器是 删除,表单提交
然而,问题我面临的是,该表单不是(重新)提交谷歌分析回调提交。处理程序被删除,因为第二次手动提交表单会导致正常行为。
我的代码是:
var formSubmitHandler = function(event){
event.preventDefault();
ga('send', 'event', 'Form Submit', 'Form Submit', 'Form Submit',
{'hitCallback':
function() {
jQuery(event.target).submit();
}
});
return false;
}
jQuery(document).ready(function($) {
if (typeof(ga)==='undefined')
return;
jQuery('form').one('submit',formSubmitHandler);
});
在这个问题上的任何帮助,将不胜感激。
答
你想要submit
的形式,而不是再次触发submit
事件。
请更改:
jQuery(event.target).submit();
要:
event.target.submit();
我明白了,不过,这将导致一个函数没有定义的错误。显然这是由于在表单中名为submit的输入按钮的情况。无论有没有名为submit present的输入按钮,我都可以通过这种方式做到这一点? – 2014-11-02 10:27:31
不是我所知道的。您可能想要重命名该输入按钮。 – PeterKA 2014-11-02 10:42:13