在 javascript 中访问会话变量
Access Session Variable in javascript
我需要访问 javascript 中的会话变量。我尝试了所有示例,但其中 none 个可以正常工作。我不知道我做错了什么。
我有以下内容:
成功登录后,在我的帐户控制器中,我像这样设置我的会话变量。
HttpContext.Session.Add("IsShowStartPopUp", true);
在我的登陆视图中,我尝试像这样访问会话变量:
<script type="text/javascript">
var IsShowStartPopUp = '<%= Session["IsShowStartPopUp"] %>';
</script>
我的结果是:
'<%= Session["IsShowStartPopUp"] %>'
我是不是漏掉了什么?
谢谢。
在您的代码中,您不应在尝试访问动态值时使用争用 '<%= Session["IsShowStartPopUp"] %>' 。否则,它将被视为字符串。
您可以使用sessionStorage。
示例:
<script>
sessionStorage.setItem('mysession','value');
alert(sessionStorage.getItem('mysession'));
</script>
我找到了这个答案:
不,会话状态是服务器端。
然后我使用以下内容:
我还是在controller中设置了用户登录时的session变量
HttpContext.Session.Add("IsShowStartPopUp", true);
然后我在我的 MVC 视图中创建了以下内容:
@if (HttpContext.Current.Session["IsShowStartPopUp"].ToString() == true)
{
HttpContext.Current.Session["IsShowStartPopUp"] = false;
<script type="text/javascript">
window.onload = function () {ShowPopup();}
</script>
};
这解决了我的问题,如果您有任何建议,欢迎评论。
谢谢
我需要访问 javascript 中的会话变量。我尝试了所有示例,但其中 none 个可以正常工作。我不知道我做错了什么。
我有以下内容:
成功登录后,在我的帐户控制器中,我像这样设置我的会话变量。
HttpContext.Session.Add("IsShowStartPopUp", true);
在我的登陆视图中,我尝试像这样访问会话变量:
<script type="text/javascript">
var IsShowStartPopUp = '<%= Session["IsShowStartPopUp"] %>';
</script>
我的结果是:
'<%= Session["IsShowStartPopUp"] %>'
我是不是漏掉了什么?
谢谢。
在您的代码中,您不应在尝试访问动态值时使用争用 '<%= Session["IsShowStartPopUp"] %>' 。否则,它将被视为字符串。
您可以使用sessionStorage。
示例:
<script>
sessionStorage.setItem('mysession','value');
alert(sessionStorage.getItem('mysession'));
</script>
我找到了这个答案:
不,会话状态是服务器端。
然后我使用以下内容:
我还是在controller中设置了用户登录时的session变量
HttpContext.Session.Add("IsShowStartPopUp", true);
然后我在我的 MVC 视图中创建了以下内容:
@if (HttpContext.Current.Session["IsShowStartPopUp"].ToString() == true)
{
HttpContext.Current.Session["IsShowStartPopUp"] = false;
<script type="text/javascript">
window.onload = function () {ShowPopup();}
</script>
};
这解决了我的问题,如果您有任何建议,欢迎评论。
谢谢