[英]Extract data from element <form action = “…”> for GTM
請告訴我如何使用Google跟蹤代碼管理器中的幫助JS或jQuery(添加自定義JavaScript變量)提取數據,以獲取表單操作屬性中元素的值。
例如,我在網站上有幾種表單,它們有不同的操作:
<form action = "call2 / 5" method = "post" class = "bp">
<form action = "order2 / 5" method = "post">
<form action = "order / 5" method = "post">
<form action = "order / 5" method = "post">
<form action = "order / 5" method = "post">
<form action = "call" method = "post">
<form action = "feedback" method = "post">
我需要獲取:call2 / 5,order2 // 5,order / 5,等等。我想將值分別寫入變量。
Custom JavaScript變量需要遵循兩個簡單規則。 首先,該腳本必須包裝在一個匿名函數塊中(function(){...})。 其次,該函數必須具有return語句(return somevalue;)。
謝謝!
結果:call2 / 5,order2 / 5,order / 5
如果要基於action
值檢索特定的<form>
元素,請使用以下命令:
function getFormByAction(action) {
return Array.from(document.getElementsByTagName("form")).find(form => form.action === action);
}
或ES5版本:
function getFormByAction(action) {
var allForms = document.getElementsByTagName("form");
for (var i = 0; i < allForms.length; ++i) {
var form = allForms[i];
if (form.action === action) {
return form;
}
}
}
如果不存在帶有指定操作的表單,則將返回undefined
。
您可以選擇文檔中的所有form
s並使用$ .each來獲取其動作。
var result = "";
$("form").each(function(_, v){
result += ", " + $(v).attr("action");
});
result = result.replace(", ", "");
return result;
編輯:切換trimStart
replace
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.