日期:2014-05-17  浏览次数:20441 次

求解:为什么关闭模态窗口时会另外打开一个新页面
请教各位大侠,问题如下:
弹出模态窗口
C# code

 LinkButton btDatail = (LinkButton)e.Row.Cells[0].Controls[0];
            string infoID = this.GridView1.DataKeys[e.Row.RowIndex].Values["userID"].ToString();
            btDatail.Attributes.Add("onclick", "javascript:var s=window.showModalDialog('admin_jianli.aspx?infoID=" + infoID + "',window,'dialogwidth:800px;dialogheight:600px;help:0;resizable:yes;status:0;scroll:yes');if(s==1) location.href='Default.aspx'");          



使用下面的代码关闭弹出窗口时会另外打开一个新的页面,这是为什么呢?
C# code

 protected void Button1_Click(object sender, EventArgs e)
{//更新数据的代码,然后关闭弹出窗口
ClientScript.RegisterStartupScript(this.GetType(), "", "<script language=javascript>window.close();</script>"); 
}



------解决方案--------------------
在打开的页面的<head>间打入:
<base target="_self" />
------解决方案--------------------
都这样做的,这应该没什么问题啊!
这句代码是加在模态窗口的那个页面!
------解决方案--------------------
窗口没有关闭 是不是你按钮事件少加了window.close();
没记错用<base target="_self" />可以解决新开窗口问题.

------解决方案--------------------
添加<base target="_self" />后window.close();
肯定是没有问题的
 
至于你的为什么不对 只有慢慢分析代码了