JavaScript操作Session的问题. 请问各位高手可不可以在javascript 中读写Session?如可以,请给出示例,谢谢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 问题很菜(我也很菜),JAVASCRIPT在客户端运行,而SESSION在服务器端运行,它怎么可能操作session? <script>var readfromsessionreadfromsession = '<%=Session("string")%>'</script> gxboy(Blin 小学生学.NET) 的方法可以读值,但如果要赋值怎么操作,谢谢. 这个操作只能是单向的在JS中可以读取SESSION中的值如果想更新SESSION的值,可以通过JS用URL参数传递给一个ASPX文件,由它改变SESSION值 另外你可以在服务器端生成JS代码,这里面可以引用session,但这是静态的初始化.想这样是可以的.前提是后台已经为其赋值了.<script> alert('<%=Session["aa"].ToString()%>');</script>-------------算是能读吧,但不能写的. js 调用 web services 改变session 调用ws简直是把事情复杂化。简单办法<script>function setsession(value){ window.open('setsession.aspx?value=' + value,'_myss')}</script><iframe name="_myss" marginwidth="1" marginheight="1" height="0" width="0" scrolling="no" border="0" frameborder="0"></iframe>setsession.aspx内容:session("mysession")=Request("value") 我有一个变通的方法,大家自已看一下,我刚试验出来,附源码。可以获取值和设置值<%@ Page language="c#" Codebehind="WebForm1.aspx.cs" AutoEventWireup="false" Inherits="Test2003.WebForm1"%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" ><HTML> <HEAD> <title>WebForm1</title> <meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1"> <meta name="CODE_LANGUAGE" Content="C#"> <meta name="vs_defaultClientScript" content="JavaScript"> <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5"> <script language="javascript"> function getSession() { document.Form1.txt.value = '<%= Session["A"] %>'; return false; } function setSession() { document.Form1.Button1.click(); } </script> </HEAD> <body MS_POSITIONING="GridLayout"> <form id="Form1" method="post" runat="server"> <INPUT id="txt" style="Z-INDEX: 101; LEFT: 256px; POSITION: absolute; TOP: 80px" type="text"><INPUT style="Z-INDEX: 102; LEFT: 424px; WIDTH: 72px; POSITION: absolute; TOP: 80px; HEIGHT: 24px" type="button" value="Get" onclick="getSession()"> <INPUT id="Button1" style="DISPLAY: none; Z-INDEX: 103; LEFT: 544px; WIDTH: 72px; POSITION: absolute; TOP: 104px; HEIGHT: 24px" type="button" value="Temp" name="Button1" runat="server"> <asp:TextBox id="TextBox1" style="Z-INDEX: 104; LEFT: 256px; POSITION: absolute; TOP: 120px" runat="server"></asp:TextBox><INPUT style="Z-INDEX: 105; LEFT: 424px; WIDTH: 72px; POSITION: absolute; TOP: 120px; HEIGHT: 24px" type="button" value="Set" onclick="setSession()"> </form> </body></HTML>后台csusing System;using System.Collections;using System.ComponentModel;using System.Data;using System.Drawing;using System.Web;using System.Web.SessionState;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.HtmlControls;namespace Test2003{ /// <summary> /// WebForm1 的摘要说明。 /// </summary> public class WebForm1 : System.Web.UI.Page { protected System.Web.UI.WebControls.TextBox TextBox1; protected System.Web.UI.HtmlControls.HtmlInputButton Button1; private void Page_Load(object sender, System.EventArgs e) { // 在此处放置用户代码以初始化页面 if (!IsPostBack) { Session["A"] = "wangzhaocai"; } } #region Web 窗体设计器生成的代码 override protected void OnInit(EventArgs e) { // // CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。 // InitializeComponent(); base.OnInit(e); } /// <summary> /// 设计器支持所需的方法 - 不要使用代码编辑器修改 /// 此方法的内容。 /// </summary> private void InitializeComponent() { this.Button1.ServerClick += new System.EventHandler(this.Button1_ServerClick); this.Load += new System.EventHandler(this.Page_Load); } #endregion private void Button1_ServerClick(object sender, System.EventArgs e) { Session["A"] = this.TextBox1.Text; } }} function setSession() { document.Form1.Button1.click(); }-----------------------------------是客户端调用服务器端的事件吗?学习~~~~~~ 客户端操作SESSION这个无法实现,用变通的方法,麻烦而且效率低,效果死板,,建议你考虑用COOKIE,他可以用JS来操作,..恩. Repeater控件的用法 关于失去焦点 updatepanel 的困惑(高分) 关于滚筒式打印得问题 搭建的asp.net 2.0环境运行页面时报错,每个页面都是,大家帮忙看看。 关于WEB服务器 如何产生一个随机数,并保证每次加载页面这个数的值都不同???在线等待-------------- 100分:调用Word出错,谢谢 求asp.net能调用的word,excel,jpg,gif ,tif转换组件或代码,需要购买的也行 像问个应该简单的问题(送100分):) 请问在ASP.net中怎样用css?????? iis注册命令是什么? datagrid问题
var readfromsessionreadfromsession = '<%=Session("string")%>'
</script>
在JS中可以读取SESSION中的值如果想更新SESSION的值,可以通过JS用URL参数传递给一个ASPX文件,由它改变SESSION值
想这样是可以的.前提是后台已经为其赋值了.
<script>
alert('<%=Session["aa"].ToString()%>');
</script>
-------------
算是能读吧,但不能写的.
function setsession(value)
{
window.open('setsession.aspx?value=' + value,'_myss')
}
</script><iframe name="_myss" marginwidth="1" marginheight="1" height="0" width="0" scrolling="no" border="0" frameborder="0">
</iframe>setsession.aspx内容:session("mysession")=Request("value")
<%@ Page language="c#" Codebehind="WebForm1.aspx.cs" AutoEventWireup="false" Inherits="Test2003.WebForm1"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<title>WebForm1</title>
<meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
<meta name="CODE_LANGUAGE" Content="C#">
<meta name="vs_defaultClientScript" content="JavaScript">
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
<script language="javascript">
function getSession()
{
document.Form1.txt.value = '<%= Session["A"] %>';
return false;
}
function setSession()
{
document.Form1.Button1.click();
}
</script>
</HEAD>
<body MS_POSITIONING="GridLayout">
<form id="Form1" method="post" runat="server">
<INPUT id="txt" style="Z-INDEX: 101; LEFT: 256px; POSITION: absolute; TOP: 80px" type="text"><INPUT style="Z-INDEX: 102; LEFT: 424px; WIDTH: 72px; POSITION: absolute; TOP: 80px; HEIGHT: 24px"
type="button" value="Get" onclick="getSession()"> <INPUT id="Button1" style="DISPLAY: none; Z-INDEX: 103; LEFT: 544px; WIDTH: 72px; POSITION: absolute; TOP: 104px; HEIGHT: 24px"
type="button" value="Temp" name="Button1" runat="server">
<asp:TextBox id="TextBox1" style="Z-INDEX: 104; LEFT: 256px; POSITION: absolute; TOP: 120px"
runat="server"></asp:TextBox><INPUT style="Z-INDEX: 105; LEFT: 424px; WIDTH: 72px; POSITION: absolute; TOP: 120px; HEIGHT: 24px"
type="button" value="Set" onclick="setSession()">
</form>
</body>
</HTML>
后台csusing System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;namespace Test2003
{
/// <summary>
/// WebForm1 的摘要说明。
/// </summary>
public class WebForm1 : System.Web.UI.Page
{
protected System.Web.UI.WebControls.TextBox TextBox1;
protected System.Web.UI.HtmlControls.HtmlInputButton Button1;
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
if (!IsPostBack)
{
Session["A"] = "wangzhaocai";
}
} #region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.Button1.ServerClick += new System.EventHandler(this.Button1_ServerClick);
this.Load += new System.EventHandler(this.Page_Load); }
#endregion private void Button1_ServerClick(object sender, System.EventArgs e)
{
Session["A"] = this.TextBox1.Text;
}
}
}
{
document.Form1.Button1.click();
}
-----------------------------------
是客户端调用服务器端的事件吗?学习~~~~~~