关闭页面前的操作

来源:互联网 发布:春日局 知乎 编辑:程序博客网 时间:2024/05/22 03:03

作者:caoxicao
出处:http://blog.csdn.net/caoxicao

工作中需要在新建一个项目后必须带出新建销售机会的页面,并且打开销售机会的新建页面后如果是新建第一个销售机会,则必须填写否则如果关闭该页面就会将刚刚建的项目信息删除。
文中用到了XMLHTTP.

function window_onbeforeunload(Projectnum)
{
if (event.clientX > document.body.clientWidth && event.clientY < 0 || event.altKey)
   {
    var oXMLHTTP = new ActiveXObject("Microsoft.XMLHTTP");
 oXMLHTTP.open("POST","CheckProjectDeal.asp?Projectnum="+Projectnum,false);
 oXMLHTTP.send();
 Str=unescape(oXMLHTTP.responseText);
 if (unescape(oXMLHTTP.responseText)!="YES")
  {
      window.event.returnValue="项目至少有一个销售机会,如离开,您所建的项目将不能保存!/n/n确认离开?";
   }
  }
}

function window_onunload(Projectnum)

if(event.clientX<=0 && event.clientY<0 || event.altKey)
  {
 if (Str!='YES')
 {
 if (form1.Mod.value != 'Save' && form1.Mod.value != 'SaveNew' )
  {
     var oXMLHTTP = new ActiveXObject("Microsoft.XMLHTTP");
  oXMLHTTP.open("POST","CheckProjectDeal.asp?Projectnum="+Projectnum+"&delproject=true",false);
  oXMLHTTP.send();
  }
  }
  }
}

<body>要按如下写。

<body bgcolor="#FFFFFF" text="#000000"  onbeforeunload="window_onbeforeunload('<%=request("Projectnum")%>');" onUnload="window_onunload('<%=request("Projectnum")%>')">