前台的onbeforeunload调用后台的用法,求各位高手帮忙解决这个问题
当页面关闭时,如何在前台的onbeforeunload调用后台的方法?
前台:
<script language="javascript" type="text/javascript" >
function close() {
}
</script>
<body onbeforeunload="close()">
后台CS代码:
public void 方法(object sender, EventArgs e)
{
往数据库insert一条数据
}
其中的function close()里应该怎么写?
如何才能实现前台的onbeforeunload调用后台的方法?
------解决方案--------------------
(1) 前台js代码:在需调用后台代码的地方,书写如下代码:
PageMethods. houtai (latlng,myCallBack);//getBj54是后台c#方法,latlng是实参,myCallBack是回调函数,是调用了后台方法之后,运行的方法。
(2) 后台处理函数。在c#后台文件中书写
[System.Web.Services.WebMethod]//注意此句必须书写
public static String houtai(Object xingcan)//注意必须是静态方法
{
…… //你要进行的处理,注意返回值
}
(3) 前台Js回调函数,
function myCallBack(result) { //result是后台方法返回的值
var di = document.getElementById("Label1"); //label1是例子,是label
di.innerText=result;
}
实际代码执行顺序是(1)-(2)-(3)其中只需调用(1),而后面两步是自动执行的。