javascript函数调用后,会话失去状态
本文关键字:失去 状态 会话 函数调用 javascript | 更新日期: 2023-09-27 18:29:46
我们使用的是Sharepoint 2007我们在页面加载时初始化会话变量我们有一个如下所述的javascript函数
function backclick()
{
__doPostBack('btnCaseSearch', 'Click');
alert('Select the Search Criteria.');
}
但在调用这个之后,我们正在失去会话值。如果我们删除__doPostBack('tnCaseSearch','Click');每当页面加载,但会话并没有丢失其值时,就会显示警报。如何维护会话请帮助或建议_doPostBack()的一些替代方案
场景是这样的以下javascript函数
function backclick()
{
__doPostBack('btnCaseSearch', 'Click');
alert(result not found.');
}
function check()
{
var btn ="<%=Session["search"]%>";
if(btn == "true")
{
do something
}
else
{
else part
}
低于服务器端代码
Page_Load()
{
//initialise session variable
session["search"] = "true";
}
btnSearch_click()
{
if(result not found)
{
this.Page.ClientScript.RegisterStartupScript(this.GetType(),"page_index_script1", "backclick();", true);
}
}
因此,当backclick()调用javascript函数时,会话正在失去状态,但如果没有调用backclick
感谢
突然向我袭来的东西:
我们在页面加载上初始化会话变量
此页面是否加载服务器端?
每次_doPostBack
都会导致pageLoad执行,所以我相信这就是覆盖会话变量的地方。
会话释放状态的唯一方法是:
- 如果它被覆盖或删除(使用断点检查您没有设置两次!)
- 浏览器不会在后续请求时交出cookie
检查这两项,如果你的问题没有得到解决,就公布你的发现。