我们正在使用Sharepoint 2007 我们在页面加载时初始化会话变量 我们有一个javascript函数,如下所述
function backclick()
{
__doPostBack('btnCaseSearch', 'Click');
alert('Select the Search Criteria.');
}
但是在调用它之后我们正在失去会话值。 如果我们删除__doPostBack('btnCaseSearch','Click'); 然后每次页面加载时都会显示警报,但会话不会丢失其值。 如何维护会话请帮助或建议一些替代_doPostBack()
sceneario是这样的 在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()那么代码就会完美地工作
由于
答案 0 :(得分:3)
突然出现在我身上的东西:
我们在页面加载时初始化会话变量
此页面是否加载服务器端?
每当_doPostBack
导致pageLoad执行时,我相信这就是你覆盖会话变量的地方。
唯一的方式会话将松开它的状态:
检查这两个问题,如果你发现的问题没有解决问题。