Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/406.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 读取Cookie变量_Javascript_Session Cookies_Google Tag Manager_Setcookie - Fatal编程技术网

Javascript 读取Cookie变量

Javascript 读取Cookie变量,javascript,session-cookies,google-tag-manager,setcookie,Javascript,Session Cookies,Google Tag Manager,Setcookie,那里有大量的javascript信息,但我似乎不能把它们全部放在一起。通过谷歌标签管理器,我创建了一个创建Cookie的脚本。然后我使用第1方变量来获取该值。这看起来很有效。在开发人员工具箱中的cookies中,我可以看到名为“LandingPage”且值为“/XYZ/”的cookie。还有其他几个cookie值,但我主要关注这一个。我搞不懂的是如何读取/显示特定的“LandingPage”值 为了便于学习,我只是尝试创建一个函数,比如一个警报,来显示“LandingPage”的值,即“/XYZ

那里有大量的javascript信息,但我似乎不能把它们全部放在一起。通过谷歌标签管理器,我创建了一个创建Cookie的脚本。然后我使用第1方变量来获取该值。这看起来很有效。在开发人员工具箱中的cookies中,我可以看到名为“LandingPage”且值为“/XYZ/”的cookie。还有其他几个cookie值,但我主要关注这一个。我搞不懂的是如何读取/显示特定的“LandingPage”值

为了便于学习,我只是尝试创建一个函数,比如一个警报,来显示“LandingPage”的值,即“/XYZ/”。我只是无法显示LandingPage的值

下面是我用来设置/创建cookie的代码

<script>
 function createCookie(name,value,days) {
    if (days) {
        var date = new Date();
        date.setTime(date.getTime()+(days*24*60*60*1000));
        var expires = "; expires="+date.toGMTString();
    }
    else var expires = "";
    document.cookie = name+"="+value+expires+"; path=/";
}
createCookie("LandingPage","{{Page Path}}")
</script>

函数createCookie(名称、值、天数){
如果(天){
变量日期=新日期();
date.setTime(date.getTime()+(天*24*60*60*1000));
var expires=“;expires=“+date.togmString();
}
else var expires=“”;
document.cookie=name+“=”+value+expires+“path=/”;
}
createCookie(“LandingPage”,“{{Page Path}}”)
在谷歌标签管理器(GTM)中,您可以使用GTM的内置变量“第一方Cookie”轻松访问第一方Cookie。您需要提供一个有价值的名称供参考,例如“登录页Cookie值”,还需要提供Cookie的名称,在您的案例中为登录页。您可以在任何内置标记、其他变量甚至自定义HTML(脚本)代码中引用此变量:{{Landing Page Cookie Value}},基于本文中的示例名称。变量应该包含cookie的值

编辑,详细解释

这正是代码,从原始帖子中复制而来。我正在创建一个新的自定义HTML标记,它在页面加载期间在所有页面上运行。

这是我创建变量的设置,引用相同的cookie名称

我还创建了一个非常简单的自定义HTML标记,它可以在任何单击事件上运行。因此,只要单击页面上的任意位置,它就会触发代码运行。它尝试在控制台中显示最近创建的Cookie变量的内容。

通过打开我的测试页面,在打开GTM预览模式后,我可以看到我的第一个标签在pageview上运行。

执行单击时,我会在控制台中获得最初存储的值:

在谷歌标签管理器(GTM)中,您可以使用GTM的内置变量“第一方Cookie”轻松访问第一方Cookie。您需要提供一个有价值的名称供参考,例如“登录页Cookie值”,还需要提供Cookie的名称,在您的案例中为登录页。您可以在任何内置标记、其他变量甚至自定义HTML(脚本)代码中引用此变量:{{Landing Page Cookie Value}},基于本文中的示例名称。变量应该包含cookie的值

编辑,详细解释

这正是代码,从原始帖子中复制而来。我正在创建一个新的自定义HTML标记,它在页面加载期间在所有页面上运行。

这是我创建变量的设置,引用相同的cookie名称

我还创建了一个非常简单的自定义HTML标记,它可以在任何单击事件上运行。因此,只要单击页面上的任意位置,它就会触发代码运行。它尝试在控制台中显示最近创建的Cookie变量的内容。

通过打开我的测试页面,在打开GTM预览模式后,我可以看到我的第一个标签在pageview上运行。

执行单击时,我会在控制台中获得最初存储的值:

我是否很清楚,您使用GTM设置cookie,并且您还希望在GTM中检索同一cookie的值?最终目标是不仅将此变量传递到Google Analytics,还将此变量传递到表单提交@kgrg Yes-这类似于“按名称获取cookie”,但我无法让那个特定的代码正常工作代码'function getCookie(LandingPage){var value=“;”+document.cookie;var parts=value.split(“;”+name+“=”);if(parts.length==2)返回parts.pop().split(“;”).shift();}我试图编辑邮件,但无法编辑。下面是我尝试在开发者控制台中运行的内容。我认为它应该和变量一起返回。”代码'function getCookie(LandingPage){var value=“;”+document.cookie;var parts=value.split(“;”+LandingPage+”=”);if(parts.length==2)返回parts.pop().split(“;”).shift();}我最初只是想找到一种方法来确认我有代码来提取正确的变量。这就是为什么我想在类似于警报框的地方显示变量。一旦我知道我可以“读取”变量,我会将变量传递到Google Analytics和表单提交中。我很清楚,您使用GTM设置cookie,这可能是重复的,您还想在GTM中检索同一个cookie的值?最终目标是不仅将此变量传递到Google Analytics,还将此变量传递到表单提交@kgrg Yes-这类似于“按名称获取cookie”,但我无法让特定代码正常工作。”代码'function getCookie(LandingPage){var value=“;”+document.cookie;var parts=value.split(“;”+name+“=”);if(parts.length==2)返回parts.pop().split(“;”).shift();}我试图编辑邮件,但无法编辑。下面是我尝试在开发者控制台中运行的内容。我认为它应该和变量一起返回。”代码'function getCookie(LandingPage){var value=“;”+document.cookie;var parts=value.split(“;”+LandingPage+”=”);if(parts.length==2)返回parts.pop().split(“;”).shift();}我最初只是想找到一种方法来确认我有代码来提取正确的变量。这就是我想展示va的原因