gpt4 book ai didi

c# - 从 JavaScript 访问 ASP.NET session 变量

转载 作者:行者123 更新时间:2023-11-29 20:14:57 25 4
gpt4 key购买 nike

当代码var accNo = '<%=Session["hdnAccession"]%>';会被执行吗?我更改了 Page_LoadComplete 中的 session 变量事件,但是当我使用 var accNo = '<%=Session["hdnAccession"]%>'; 访问它时,它总是返回我首先设置的值。在 Page_LoadComplete ,我喜欢以下... Session["hdnAccession"] = GetNewAccession() ,当我调试时,我看到 Session["hdnAccession"]每次更新。但为什么它没有在 JavaScript 中得到更新?。我处于无法使用的情况 HiddenField而不是 Seession .

最佳答案

您需要创建一个 PostBack 来从 JS 访问 session 变量。像这样:

<script type="text/javascript">
<!--
function setSessionVariable(valueToSetTo)
{
__doPostBack('SetSessionVariable', valueToSetTo);
}
// -->
</script>

private void Page_Load(object sender, System.EventArgs e)
{
// Insure that the __doPostBack() JavaScript method is created...
this.GetPostBackEventReference(this, string.Empty);

if ( this.IsPostBack )
{
string eventTarget = (this.Request["__EVENTTARGET"] == null) ? string.Empty : this.Request["__EVENTTARGET"];
string eventArgument = (this.Request["__EVENTARGUMENT"] == null) ? string.Empty : this.Request["__EVENTARGUMENT"];

if ( eventTarget == "SetSessionVariable" )
{
Session["someSessionKey"] = eventArgument;
}
}
}

参见此处:http://forums.asp.net/post/2230824.aspx

关于c# - 从 JavaScript 访问 ASP.NET session 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7555454/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com