用于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]"从输出,但上面的代码,我无法做到
可以帮助修改代码。
答案 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可能有问题(我认为看起来不错)。