a页面通过showModelessDialog 开b页面
b页面通过iframe包含c页面 
c页面里面 meta HTTP-EQUIV="Refresh" 来刷新
到达某个状态时候 通过parent.close() 关闭b页面
b页面如何在关闭前 触发一事件
我用onunload的时候 好像c页面刷新他也触发 到底怎么回事 该怎么办

解决方案 »

  1.   

    refresh必然先unload,所以onunload在刷新时也触发。弄个类似全局变量的东东标识b页面是刷新还是关闭?
      

  2.   

    父窗口<html xmlns="http://www.w3.org/1999/xhtml" >
    <head>
        <title>无标题页</title>
    <script language="javascript">
    function openwin()
    {
        var url="b.html";
        //打开模式窗口,注意模式窗口的样式
        var mydata=showModalDialog(url,null,"dialogWidth:300px;dialogHeight:120px;center:yes;help:No;status:no;resizable:Yes;edge:sunken");
        if(mydata)
         alert("子窗口已经关闭");
    }
    </script>
    </head>
    <body>
        <input id="Button1" type="button" value="打开窗口" onclick="openwin()" />
    </body>
    </html>子窗口(b.html)<html xmlns="http://www.w3.org/1999/xhtml" >
    <head>
    <title>标题页</title>
    <script language=javascript>
     function ReturnWin()
     {
         var returnData=new Object();     
        returnData.value="true";      
        window.returnValue=returnData;                   
     }
    </script>
    </head>
    <body onunload="ReturnWin()"></body>
    </html>