我希望使用GTM在公式中跟踪所选目的地。
为此,我使用自定义js创建了一个变量:
function() {
var inputField = document.getElementById("country");
return inputField.value || "";
}
当我在预览模式下测试时,我会找回正确选择的答案,但不是想要的值:
例如:我在公式中选择了美国:
<option value="2">USA</option>
我回来了&#34; 2&#34;而不是&#34; USA&#34;。 但我想要价值&#34; USA&#34;在我的dataLayer中
我做错了什么?
提前致谢! :)
答案 0 :(得分:0)
我做错了什么?
您要求的值为2
。
要获取所选选项的文本,您需要找到所选的选项元素,然后获取其文本。
var select = document.getElementById("country");
var option = select.options[select.selectedIndex];
var text = option.text;
console.log(text);
<select id=country>
<option value=1> One
<option value=2 selected> Two
<option value=3> Three
</select>
答案 1 :(得分:-1)
像@cFreed所说,你应该检索输入字段的.innerHTML
,而不是.value
,如下所示:
function() {
return document.getElementById("country").innerHTML || "";
}
在此处详细了解.innerHTML
:https://developer.mozilla.org/en-US/docs/Web/API/Element/innerHTML