那你就window.open三次呗,不过估计会被xp sp2的popblock干掉

解决方案 »

  1.   

    你连续调用Response.Write()写js的打开页面;就可以了三!
      

  2.   

    我第一个页面是打开的。后面的页面是依次打开的如页面A弹出b,b到c.
    关闭c的时候如何刷新A?
    两位说的有点笼统,可否详细点啊
      

  3.   

    <a taget back="") 3次吧
      

  4.   

    回复人: owenbeckham(★温州★owen迷★) ( ) 信誉:100  2004-07-14 15:52:00  得分: 0  
     
     
       <a taget back="") 3次吧
    这个只是刷新客户端吧?
      
     
      

  5.   

    让A自己刷新A.aspx:
    <body onload="javascript:Pop3();">....<script language=javascript>
    function Pop3()
    {
         window.open(1);
         window.open(2);
         window.open(3);
         this.window.location.reload();
    }
    </script>
      

  6.   

    我大概明白楼主的意思了,就是在A页面中window.open打开B页面,然后B页面中再次使用window.open打开C页面,但是因为window.opener只能够操作上一层窗口,所以C页面无法对A页面进行操作,是不是?这样你只需要把window.opener手动传递下去就是了。在B页面中用如下javascript:
    var windowA=window.opener
    然后在C中从B获取A:
    var windowA=window.opener.windowA
    如此传递下去,你就能在n层页面获取第一层页面的window对象了。有了window对象,什么事情都能干了吧。
      

  7.   

    楼上理解的非常非常正确(理解万岁)。太好了!
    可是,我不太懂你这个window.opener的用法。我怎么传参数?怎么能动态去刷新a页面(不只是客户端刷新哦)
      

  8.   

    window.opener就是打开本窗口的那个窗口的window对象。
      

  9.   

    那如何在页面上存储静态变量object窗体呢?以防止页面每次刷新的时候不至于丢掉前面的window.opener,因为我第二个窗口是关掉的。
    回答完这个,马上结贴
      

  10.   

    第二个窗口关掉也没有问题啊。在第三个窗口被打开时马上进行:
    var windowA=window.opener.windowA
    这样windowA就已经被传递到第三个窗口啦。另外,其实没必要的话最好不要搞连续多个window.open。如果你不想上一层窗口被关掉,就用window.openModalDialog,模式窗口在关闭之前父窗口是被锁定的。这样所有出现的窗口都是模式窗口,保证了你的要求。
      

  11.   

    不好意思,写错了。应该是window.showModalDialog。
      

  12.   

    在打开第三个窗口时当然可以接收到。可是在第三个窗口刷新的时候就没了呀?
    有没有办法可以保存这个object呢?
      

  13.   

    也就是说你的第三个窗口还要进行PostBack……?啊,真的是很麻烦很刁钻的要求啊。
    我还是建议你用showModalDialog,你试一试先吧,看看是否满意。如果你一定要这样做,有一个折衷办法,就是在windowC采用Frame/IFrame,把内容放在一个Frame,PostBack也在这个Frame进行,同时把windowA的对象(指针)转移到一个隐藏Frame。