关于onunload和onbeforceunload中Form的 submit的问题

积木 2010-04-03 04:30:07
项目中遇到了页面关闭时必须要向服务器提交请求来释放资源的问题,所以很自然的会想到在onunload或者onbeforceunload里面来做这个事情,结果因为网络传输速度,慢到了比IE6画面关闭还慢,搞得在onunload里面写的submit请求来不及发出去画面就被关闭了。。。这个submit语句肯定是被执行了,但是通过wireShark进行网络抓包发现,submit的请求并没有成功发出去。
组内倒是有一个解决方法,就是在unload里面重新开一个关闭中画面,让这个画面来执行submit然后让他关闭自身。但是感觉上有点儿像恶意javascript程序一样。不知道各位有啥好的解决方案。100分送了。
...全文
101 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
积木 2010-04-04
  • 打赏
  • 举报
回复
这么好玩儿的技术问题,没人讨论吗?
积木 2010-04-03
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 zzqkillyou 的回复:]
用ajax让后台返回一个值,等接收到值了再关闭,如何?
[/Quote]
告诉你一个好消息,不好使。呵呵,要不然就不会开新画面做这个事情了。
事实上我们在新画面用的就是你说的方法。然后才关掉的。
flesu 2010-04-03
  • 打赏
  • 举报
回复
只能在服务器端想办法.
1.让一个WEB服务专门代理!
2.类似session,用户请求时建立一个请求信息记录(下次请求时覆盖它),每隔20分钟(或更长时间)判断下是否再有请求,如果没有说明用户已经关闭,就释放资源!
千游 2010-04-03
  • 打赏
  • 举报
回复
用ajax让后台返回一个值,等接收到值了再关闭,如何?

87,996

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧