如何在JavaScript中设置会话变量并在ASP.NET .cs文件中访问它

时间:2016-07-21 19:18:55

标签: javascript c# asp.net session

我想在JavaScript中设置会话变量并调用页面重新加载。此时我希望aspx.cs文件识别会话变量的变化并对网页进行适当的更改。我尝试过使用:

使用Javascript分配ASP.NET会话变量:

function SetUserName()
{
    var userName = "Shekhar Shete";
    '<%Session["UserName"] = "' + userName + '"; %>';
     alert('<%=Session["UserName"] %>');
}
</script>

使用Javascript访问ASP.NET会话变量:

<script type="text/javascript">
    function GetUserName()
    {

        var username = '<%= Session["UserName"] %>';
        alert(username );
    }
</script>

虽然设置了会话变量。如果我重新加载页面,JS字段会识别会话变量的新数据。它在aspx.cs文件中没有被识别。

基本上我正在尝试根据网页上的用户操作将数据发送到我的aspx.cs文件。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

在示例中,您提供ASP代码(&lt; %%&gt; 中包含的代码)在页面进入浏览器之前处理,Javascript在浏览器中处理。

如果要将值传回服务器有许多选项,但一种简单的方法是在表单中使用隐藏的输入(example),然后提交回服务器,然后当你在服务器上收到帖子时,你将它添加到会话中。

void Page_Load() {
    //Don't blindly trust input from the client, validate first!
    Session["Username"] = Request.Params["Username"];
}