日期:2014-05-18  浏览次数:20522 次

登陆后,弹出窗口怎么实现,帮助下
我在login.aspx页面一点登陆,密码验证通过后,就自动关闭login.aspx页面,并且弹出没有地址栏的admin.aspx页面。

我是这样写的。

  protected void btnLogin_Click(object sender, EventArgs e)
  {
  if(ChkPassword()==true)
  {
  Response.Write("<Script>window.close();window.open('admin.aspx','','resizable=yes,status=no,toolbar=no,menubar=no,location=no');</Script>");
  Response.End();
  }
  }

可是存在很多问题:

1、弹出窗口被阻止了。如何不让它阻止啊

2、竟然提示“你查看的网页正试图关闭窗口”,如何不让它提示。

3、有没有人知道怎么解决吗?

------解决方案--------------------

1、弹出窗口被阻止了。如何不让它阻止啊

2、竟然提示“你查看的网页正试图关闭窗口”,如何不让它提示。
这是因为你浏览器的设置问题,和程序没关系的,你把安全级别设置低点就OK了
------解决方案--------------------
并且弹出没有地址栏的admin.aspx页面。

有意义吗?Ctrl+N,地址栏立即出来。

直接Redirect就行了/


------解决方案--------------------
在现代浏览器下,你的需求可能很难实现.

1、弹出窗口被阻止了。如何不让它阻止啊
------------
除非window.open是在用户有意识调用的情况下才比较不会被浏览器拦截.
e.g.function f(){window.open(url);}
<input type="button" onclick="f()" />

2、竟然提示“你查看的网页正试图关闭窗口”,如何不让它提示。
---------------
同上

3、有没有人知道怎么解决吗?
---------------
上同.


建议做成转向吧,登录成功response.redirect("admin.aspx");
其实, 在一般应用中,没必的话不要搞弹出式窗口, 因为这样的设计是很OUT的, 应用体验很不好, 就象alert(msg)一样.