表格放弃数据谷歌标签管理器

时间:2016-01-05 10:38:08

标签: javascript jquery google-analytics google-tag-manager

用于Google跟踪代码管理器中的表单放弃跟踪。以下是代码(来自http://www.simoahava.com/analytics/track-form-abandonment-with-google-tag-manager/的原始代码)。我按照我的要求修改了代码。

    (function() {
    var formSelector = '.webform-component-fieldset';
    var attribute = 'name';
    var history = [];
    window.addEventListener('beforeunload', function() {
        if (history.length) {
            var x = history.join(' > ');
            var x= x.replace(/submitted[fieldset_user_info]/g,"");
            window.dataLayer.push({
                'event' : 'formAbandonment',
                'category' : 'Form Abandonment',
                'action' : x

            });
        };
    });
});

 document.querySelector(formSelector).addEventListener('change', function(e) {
    history.push(e['target'].getAttribute(attribute));
});
})();

代码正在执行但输出不是必需的。 我为eventAction数据层得到的输出(' action':x)如下所示

  

提交[fieldset_user_info] [first_name]>   提交[fieldset_user_info] [street_address_1]>   提交[fieldset_user_info] [street_address_2]>   提交[fieldset_user_info] [city]>   提交[fieldset_user_info] [state]>   提交[fieldset_user_info] [zip_code]>   提交[fieldset_user_info] [e_mail_address]>   提交[fieldset_user_info] [confirm_e_mail_address]>   提交[fieldset_user_info] [last_name]>   提交[fieldset_user_info] [street_address_2]>   提交[fieldset_user_info] [i_prefer_to_receive_communications_from_pfizer_by]

我想删除所有文字"提交[fieldset_user_info]"从输出,但上面的代码,我无法做到

可以帮助修改代码。

1 个答案:

答案 0 :(得分:0)

尝试替换字符串

var x= x.replace(/submitted[fieldset_user_info]/g,"");

字符串:

var x= x.replace("submitted[fieldset_user_info]","");

根据description of JS replace() method,它支持正则表达式以及字符串作为第一个参数。

我试图测试"替换()"控制台中有两种变体的方法:使用RegEx和简单字符串:方法只能成功地使用字符串。你的regEx可能有问题(我认为看起来不错)。