如果我用 window.open() 在javascript 中打开一个窗口,我在服务端的代码:
protected void bt1_onclick(object sender, EventArgs e)
{
Session[ "modelcode "] = "aa ";
StringBuilder sbJScript = new StringBuilder();
sbJScript.Append( " <script language=javascript> ")
.Append( " window.close(); ")
.Append( " </script> ");
Response.Write(sbJScript.ToString());
}
运行正常(把 某些内容放到session中然后关闭窗口),
但是如果我用window.showModelessDialog() 打开一个窗口,同样的代码就不工作了,那位知道如何解决这个问题?
------解决方案--------------------------------------------------------
1. 缓存的问题.2.是不是开了个新窗口,如果是在 <head> 中加入 <base target= "_sel ">
------解决方案--------------------------------------------------------
showmodaldialog 和showmodelessdialog 都会出现丢失session现象,所以正确而又可靠的方法是不用session而用隐藏域传递参数值.
------解决方案--------------------------------------------------------
<base target= "_self "/>
<meta http-equiv= "Expires " content= "0 " >
<meta http-equiv= "Cache-Control " content= "no-cache " >
<meta http-equiv= "Pragma " content= "no-cache " >
在aspx文件里加上这个就行了。