浏览器窗口在每个回发IE上打开

时间:2013-06-30 05:23:15

标签: javascript asp.net client

我一直在asp.net网站上工作,我需要从后面的c#代码打开一个浏览器窗口。 我在aspx页面上创建了以下JS。

JS:

<scrupt type="text/javascript">

function openPopUp() {
  window.open("About.aspx?something=happening", "WindowPopup", "width=700px, height=500px, resizable");
}
</script>

和这个C#代码

C#:

protected void Button1_Click(object sender, EventArgs e) {
  string script = "<script language='javascript' type='text/javascript'>Sys.Application.add_load(openPopUp);</script>";
            ClientScript.RegisterStartupScript(this.GetType(), "openPopUp", script);
}

上面的代码工作正常,并将About.aspx页面显示为新的浏览器窗口。但是,问题是每当父页面进行回发时(例如,每当我尝试在父页面上对radgrid进行排序时),它都会再次打开浏览器窗口。

我已经用Google搜索了,但是没有找到有用的解决方案来解决这个问题,也许我需要取消注册正在Button1_Click上注册的客户端脚本,如果是这样的话,那么我知道如何分离或者关闭浏览器窗口后取消注册脚本,以便同一浏览器窗口不会在每次回发时反复显示。

任何帮助都将受到高度赞赏!

1 个答案:

答案 0 :(得分:0)

在onclick事件中你可以尝试这个..

onclick="javascript:window.open("About.aspx?something=happening",'mywin','left=20,top=20,width=700,height=700,toolbar=0,resizable=1,location=0,menubar=0');return false;"

我认为返回false可以解决问题..