使我的cookie在mvc中工作

时间:2015-12-03 15:29:51

标签: javascript asp.net-mvc-4 cookies

我需要切换我的mvc主题并且它正常工作,但实现的cookie根本不起作用。

var style_cookie_name = "submitTheme";
var style_cookie_duration = 30;
var style_domain = "localhost";
function switch_style(css_title) {
    var i, link_tag;
    for (i = 0, link_tag = document.getElementsByTagName("link") ;
      i < link_tag.length ; i++) {
        if ((link_tag[i].rel.indexOf("stylesheet") != -1) &&
          link_tag[i].title) {
            link_tag[i].disabled = true;
            if (link_tag[i].title == css_title) {
                link_tag[i].disabled = false;
            }
        }
        set_cookie(style_cookie_name, css_title,
          style_cookie_duration, style_domain);
    }
}

这是我在更改主题时触发的功能,除了它将值传递给set_cookie()函数的部分:

function set_cookie(cookie_name, cookie_value,
    lifespan_in_days, valid_domain) {
    var domain_string = valid_domain ?
                       ("; domain=" + valid_domain) : '';
    document.cookie = cookie_name +
                       "=" + encodeURIComponent(cookie_value) +
                       "; max-age=" + 60 * 60 *
                       24 * lifespan_in_days +
                       "; path=/" + domain_string;
}

根据我有限的知识,这个脚本应该在域的末尾保存一个cookie,这不会发生(url地址保持不变)。

你能帮助我吗?提前谢谢!

1 个答案:

答案 0 :(得分:0)

对于遇到此问题的其他人:当您在localhost上运行您的网站时,您应该将您的域设置为&#34;&#34;。这为我修好了!