Javascript 从cookie中读取特定值

Javascript 从cookie中读取特定值,javascript,cookies,Javascript,Cookies,我有一个为该域编写cookie的应用程序。这个cookie中有很多信息,但没有敏感信息。它存储的一个值是“DisplayFullName”,我想检索它 我已经搜索了一段时间,找到了许多允许您读取cookie(其中的所有值)的代码示例,但没有任何特定的代码示例允许您读取特定的值。我确实找到了一个jquery示例,但它看起来像是在值之间循环。然而,我的cms没有安装jquery,所以我想用老式的方式 这是我必须阅读cookie的代码,它似乎工作正常。我只需要读取具体的值。请有人帮我或给我指出正确的方

我有一个为该域编写cookie的应用程序。这个cookie中有很多信息,但没有敏感信息。它存储的一个值是“DisplayFullName”,我想检索它

我已经搜索了一段时间,找到了许多允许您读取cookie(其中的所有值)的代码示例,但没有任何特定的代码示例允许您读取特定的值。我确实找到了一个jquery示例,但它看起来像是在值之间循环。然而,我的cms没有安装jquery,所以我想用老式的方式

这是我必须阅读cookie的代码,它似乎工作正常。我只需要读取具体的值。请有人帮我或给我指出正确的方向

function getCookie(name)
{
  var re = new RegExp(name + "=([^;]+)");
  var value = re.exec(document.cookie);
  return (value != null) ? unescape(value[1]) : null;
}

alert(getCookie("ecm"));

我希望最终将DisplayFullName添加到iframe id的src中,我已将MyIframe作为参数调用。

我给您的建议是根本不要使用cookies。使用
localStorage
界面,该界面的语法更加用户友好

例如:

localStorage['ecm'] = 'some value';
alert(localStorage['ecm']);
因为它只是一个Javascript对象,所以也可以使用点表示法:

localStorage.ecm = 'some value';
alert(localStorage.ecm);

这只存在于现代浏览器中。如果向后兼容性很重要,那么可以使用各种垫片,例如,这些垫片使所有在后台使用老式cookie的浏览器都可以使用这些功能。

我给你的建议是根本不要使用cookie。使用
localStorage
界面,该界面的语法更加用户友好

例如:

localStorage['ecm'] = 'some value';
alert(localStorage['ecm']);
因为它只是一个Javascript对象,所以也可以使用点表示法:

localStorage.ecm = 'some value';
alert(localStorage.ecm);

这只存在于现代浏览器中。如果向后兼容性很重要,那么可以使用各种垫片,例如,这些垫片使所有在后台使用老式cookie的浏览器都可以使用这些功能。

这对您很有用。它只是在cookies上循环查找您传入的名称

function getCookieByName(name) {
    var cookies = document.cookie.split(";"),
        yerCookie = null,
        cookiePair;

    for (var i=0; i < cookies.length; i++) {
        cookiePair = cookies[i].split("=");
        if (cookiePair[0].trim() === name) {
            yerCookie = cookiePair.slice(1).join("=");
            break;
        }
    }

    return yerCookie;
}

这对你有用。它只是在cookies上循环查找您传入的名称

function getCookieByName(name) {
    var cookies = document.cookie.split(";"),
        yerCookie = null,
        cookiePair;

    for (var i=0; i < cookies.length; i++) {
        cookiePair = cookies[i].split("=");
        if (cookiePair[0].trim() === name) {
            yerCookie = cookiePair.slice(1).join("=");
            break;
        }
    }

    return yerCookie;
}

谢谢,生成cookie的不是我的应用程序。这是我们服务器上的第三方cms系统。我只想将displayname传递给另一个系统谢谢,生成cookie的不是我的应用程序。这是我们服务器上的第三方cms系统。我只想将displayname传递给另一个系统hi和bdrew,我已尝试使用alert(getCookieByName(“DisplayFullName”))访问cookie;-然而,我没有得到我想要的回应。我是否应该做些其他事情来从名为ecm的cookie访问DisplayFullName参数?@JK36您能发布
document.cookie
?如果cookie看起来像
“DisplayFullName=Foo;”
,那么
getCookieByName(“DisplayFullName”)
将返回
Foo
不确定这是您想要的,但这就是我的ecm cookie DisplayFullName=my%20Name&username=xUser1&dm=www.my.domain.name.com&DefaultLanguage=2057&NavLanguage=2057&SiteLanguage=2057&TimeZone=GMT标准时间&SubType=&ContType中包含的内容=-1@JK36键入
console.log(document.cookie)时会看到什么
在浏览器的js控制台中?ecm=DisplayFullName=My%20Name&username=xUser1&dm=www.My.domain.name.com&DefaultLangu‌​年龄=2057&NavLanguage=2057&SiteLanguage=2057&TimeZone=GMT标准时间&子类型=&ContType=-1;ektron_分析_叠加=模式=无;RadEditorGlobalSerializeCookie=[ctl00\U ctl00\U cp1\U ContentBlock1\U ContentDesignerModules]-[].[content\U Strater\U ContentDesignerModules]-[].[content\U Strater\U ContentDesignerToolbars]-[].[content\U html\U ContentDesignerModules]-[].[content\U html\U ContentDesignerToolbars]-[].\;大家好,我已经尝试使用alert(getCookieByName(“DisplayFullName”);-然而,我没有得到我想要的回应。我是否应该做些其他事情来从名为ecm的cookie访问DisplayFullName参数?@JK36您能发布
document.cookie
?如果cookie看起来像
“DisplayFullName=Foo;”
,那么
getCookieByName(“DisplayFullName”)
将返回
Foo
不确定这是您想要的,但这就是我的ecm cookie DisplayFullName=my%20Name&username=xUser1&dm=www.my.domain.name.com&DefaultLanguage=2057&NavLanguage=2057&SiteLanguage=2057&TimeZone=GMT标准时间&SubType=&ContType中包含的内容=-1@JK36键入
console.log(document.cookie)时会看到什么
在浏览器的js控制台中?ecm=DisplayFullName=My%20Name&username=xUser1&dm=www.My.domain.name.com&DefaultLangu‌​年龄=2057&NavLanguage=2057&SiteLanguage=2057&TimeZone=GMT标准时间&子类型=&ContType=-1;ektron_分析_叠加=模式=无;RadEditorGlobalSerializeCookie=[ctl00\U ctl00\U cp1\U ContentBlock1\U ContentDesignerModules]-[].[content\U Strater\U ContentDesignerModules]-[].[content\U Strater\U ContentDesignerToolbars]-[].[content\U html\U ContentDesignerModules]-[].[content\U html\U ContentDesignerToolbars]-[].\;