如何将值从表单赋值给Javascript会话变量

时间:2014-06-05 09:27:50

标签: javascript html asp.net session-variables

我正在尝试创建Javascript Session变量,它将从一个表单中读取信息并将这些变量传递给另一个表单。

我可以为这些Session变量分配字符串,但我无法将Form元素的值分配给这些变量

function SetUserName() 
{       
     <% var text1= "Charles";%>
     <%Session["UserName"] =text1;%>
     var session_value='<%=Session["UserName"]%>';
}
</script>

这是第一页上的Javascript工作,点击按钮我调用另一个页面,我可以显示这个会话变量。

function LoadUserName()
{
    var username = '<%= Session["UserName"] %>';
    alert(username);
}

在加载第二页时调用此方法。如何将值从HTML元素传递到会话变量?

例如说我有一个文本框

 <asp:TextBox ID="Address_Box" runat="server"  TextMode="MultiLine"
             MaxLength="200" ></asp:TextBox>

如何将此框中的文本发送到会话变量?

2 个答案:

答案 0 :(得分:1)

你必须把它放在你的c#代码中。

Session["UserName"] = Address_Box.Text;

要获得更完整的答案,我必须查看更多代码。为了获得更好的解决方案,您必须解释您尝试实现的目标

答案 1 :(得分:1)

您的代码:

var session_value='<%=Session["UserName"]%>';

没有&#34;从javascript&#34;访问ASP.Net会话。

使用此代码,您可以生成(在处理请求期间)一些将发送到浏览器的文本。此文本包含由表达式Session["UserName"]生成的字符串。

一旦此文本到达浏览器,它将被解释为javascript。这个javascript不知道任何会话值或它(部分)生成的事实。

您需要找到一些方法将数据从浏览器发送回服务器(例如使用回发或ajax),然后才能将其存储在Session中。