我有以下代碼。在JavaScript函數內如何修改會話變量
在asp.net中,我設置了會話變量,然後將它傳遞給javascript進行修改。 在JavaScript中,我可以讀取會話變量值並返回TextBox1中的修改值。 再次在asp.net中,我收到修改的會話變量值並將其存儲在會話變量中。
protected void Page_Load(object sender, EventArgs e)
{
Session["MyTest"] = "abcd";
String csname = "OnSubmitScript";
Type cstype = this.GetType();
// Get a ClientScriptManager reference from the Page class.
ClientScriptManager cs = Page.ClientScript;
// Check to see if the OnSubmit statement is already registered.
if (!cs.IsOnSubmitStatementRegistered(cstype, csname))
{
string cstext = " document.getElementById(\"TextBox1\").value = getMyvalSession() ; ";
cs.RegisterOnSubmitStatement(cstype, csname, cstext);
}
if (TextBox1.Text.Equals("")) { }
else {
Session["MyTest"] = TextBox1.Text;
}
}
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<script language=javascript type="text/javascript">
function getMyvalSession() {
var txt = "efgh";
var ff = '<%=Session["MyTest"] %>' + txt;
return ff ;
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:TextBox ID="TextBox1" runat="server" AutoPostBack=true ></asp:TextBox>
<input type="submit" value="Submit" />
</div>
</form>
</body>
</html>
但我的目標是 - 在javascript函數本身,我應該能夠修改會話變量。 而我不想使用提交按鈕。
Sunny正確回答了您的問題,並且應該有可接受的答案。 – nunzabar 2013-11-15 20:05:33