我已经在登录部分设置了我的cookie,如下所示:
var cookie = new HttpCookie("sys_user_id", (query.UserAccountId).ToString())
{
Expires = DateTime.Now.AddDays(1)
};
Response.SetCookie(cookie);
我可以使用以下代码访问并更改view
处相同Cookie的整数:
<script>
var sysUserId = @Convert.ToInt32(HttpContext.Current.Request.Cookies["sys_user_id"].Value);
</script>
但如果我把它放在.js文件中,我会在@Convert.ToInt32(HttpContext.Current.Request.Cookies["sys_user_id"].Value);
收到错误。这是因为.js文件无法读取剃刀语法。有没有办法获取我的“sys_user_id”cookie并使用javascript将其转换为整数,以便我可以将它放在我的.js文件中?
答案 0 :(得分:0)
对于那些尚未得到这类问题答案的人来说,我就是这样做的。
我创建了一个新功能:
function getCookie(cname) {
var name = cname + "=";
var ca = document.cookie.split(';');
for(var i=0; i<ca.length; i++) {
var c = ca[i];
while (c.charAt(0)===' ') c = c.substring(1);
if (c.indexOf(name) === 0) return c.substring(name.length,c.length);
}
return "";
}
然后我使用以下代码调用了我的“sys_user_id”cookie:
var sysUserId = getCookie("sys_user_id);
这是这个答案的帖子: How to get server side cookies value in javascript?