用户登录成功后,window.open一个页面(嵌入masterpage里面),不管在masterpage里面打开什么页面,只要点击登录页面的关闭按钮,就关闭masterpage这边的页面,怎么实现???看到有人说记录下打开页面的句柄,可是masterpage里面打开什么页面也不知道啊

解决方案 »

  1.   

    这与masterpage有什么关系?客户端的事.var a  =window.open("窗口");a.close()就可以了.如果新窗口中还有打开子窗口.可在父窗口定义一个数组.父窗口var ary = new Array();
    ary[ary.length] = window.open("子窗口");子窗口再开窗口时.window.opener.ary[window.opener.ary.length] = window.open("孙窗口1");点登录的关闭按纽时.循环ary,一个个关闭.
      

  2.   

    你window.open方法打开的时候这样用
    var child = window.open("xxx.aspx");在点击登录页面的关闭按钮的时候只要child.close();就可以了
      

  3.   

    我的登录页面不是嵌入masterpage的,登录按钮里面经过很多判断,在都成功之后,执行的是
    response.write(... window.open(url)  ...) //里面的url才是嵌入masterpage的
    上面的方法虽然取到了句柄,但是我点重新登录的时候(还是同一个按钮),根本抓不到那个参数了
      

  4.   

    用户登录成功后,window.open一个页面(嵌入masterpage里面),不管在masterpage里面打开什么页面,只要点击登录页面的关闭按钮,就关闭masterpage这边的页面,怎么实现???
    ============
    1。
    整了个 Master 出来,把大伙搞糊涂了,纯粹客户端的事,与 Master 又什么干系?2。
    猜测一把:在 login.aspx 登陆成功后 open 出来 AuthorizedPage.aspx ,但是此时 login.aspx 没有关闭, 然后用户关闭 login.aspx 要关闭 AuthorizedPage.aspx 所在窗口?============
    LZ 你将 Web 当 WinForm 来使唤啊?
    虽然不是和合理,但是依然有办法,即使有点变态慕白兄 是正解
    3。
    我的登录页面不是嵌入masterpage的,登录按钮里面经过很多判断,在都成功之后,执行的是
    response.write(... window.open(url) ...) //里面的url才是嵌入masterpage的
    上面的方法虽然取到了句柄,但是我点重新登录的时候(还是同一个按钮),根本抓不到那个参数了
    ===========
    按你的描述,不是 AJAX 登陆,点击 重新登录 已经刷新页面了,那写 js 变量当然没了4。
    比较疯狂的设计!!!5。
    竟然都登陆成功了,还留着 login 。aspx 有何意义?