asp.net 下 使用 showModalDialog 模式窗口

<a href="javascript:showModalDialog('ansmsg.aspx?id=<%#Eval("gid")%>');window.location.reload()">
    回复
</a>

 

 

很普通的一个页面指向链接.. 传参数ID 过去...  后便添加了 window.location.reload() 

这个 window.location.reload() 的意思是 .. 模式窗体关闭之后刷新父页面 

 

ansmsg.aspx   就是要弹出来的 模式窗体咯..

在 ansmsg.aspx  页面添加如下代码:

 

 

 
    protected void Page_Load(object sender, EventArgs e)
{
Response.Expires
= 0; }

这个意思是  禁止 模式窗体页面缓存..

如果不这样做的话... 地址栏ID不变.. 内容也不会变..

就比如..我的功能是这样的.. 如图:

这样的情况下..如果不添加禁止页面缓存..我需要回复 留言版信息..   重新从 "回复" 链接打开的模式窗体..内容是不会变的.. 即使数据库中已经更新了...

如果这个页面紧紧是展示信息..而没有提交按钮...我想这样做已经OK 了...

但是我这个模式窗体有个 提交按钮..意思就是说我需要回发数据回去..

这个时候就出现一个问题....

当点击了 提交按钮之后... 这个模式窗体  会在新页面打开...

失去了模式窗体的意义...

这个不太好...但是怎么解决呢?

方法很简单..

在 作为模式窗体弹出的 那个页面 页面源代码中添加如下代码..

 

 
   </head>
<base target="_self" />
<body>

你可能感兴趣的:(showModalDialog)