3

我想在我的 aspx 页面中通过 JavaScript 为会话变量分配一些值。

 var name = e.object.text;
 <%# Session["CurrentName"] = name %>

上面的代码给出以下错误:

Compiler Error Message: CS0103: The name 'name' does not exist in the current context

当我在谷歌上搜索时,所有帖子都是关于从 JavaScript 中的会话中获取价值的。但我想将值设置为 JavaScript 代码中的会话变量。

如何在 JavaScript 中为会话变量赋值?

谢谢

4

3 回答 3

5

使用 Javascript 访问和分配会话变量:

看这里

使用分配ASP.NET Session变量Javascript

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

使用访问 ASP.NET Session变量Javascript

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

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

希望这对您有所帮助...!:)

于 2013-11-27T13:13:50.683 回答
2

你不能,至少不能这样。

JavaScript 是客户端,因此在服务器端 (C#) 之后呈现。这意味着您不能直接通过 JavaScript 分配会话值。

解决问题的一种方法是使用 AJAX 异步向服务器发送请求并更改会话的值。

示例如何做到这一点。

于 2013-08-22T06:21:09.140 回答
0
<script runat="server">
 var name = e.object.text;
 Session["CurrentName"] = name;
</script>

Try this, by using runat="server" on script you can assign value to the Session

于 2013-08-22T06:26:21.357 回答