请问当客户端捕获浏览器关闭时,如何发送消息给服务器端?(高手请进)

salmonen 2004-10-11 10:14:45
背景
我们在做一个b/s的OA项目,其中公文流转有专门编辑word文档的页面,文档被一个用户编辑时是不能被其它用户编辑的,所以我们就得当文档编辑页面打开时,锁定次文档已经打开不再允许其它人编辑。当用户离开文档编辑页面解除对此文档的锁定。

现在锁定文档很容易,服务器端Page_Load事件就能实现,反过来解除文档的锁定,比较费劲。不仅要考虑服务器事件也必须考虑客户端事件,例如用户点击一个链接或关闭浏览器也算是离开编辑页面,想来想去只能从客户端判断,服务器也没法捕获。

请各位高手帮忙!!!!!谢了
...全文
257 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
csdnaspnet 2004-10-15
  • 打赏
  • 举报
回复
mark
vzxq 2004-10-11
  • 打赏
  • 举报
回复
或者干脆打个退出按钮
还有用户session过期也要解开锁定
vzxq 2004-10-11
  • 打赏
  • 举报
回复
onunload
事件中处理
salmonen 2004-10-11
  • 打赏
  • 举报
回复
你好 net_lover(孟子E章)

可不可以说详细点?onbeforeunload和onunload有什么区别?请指教!谢了
real0411 2004-10-11
  • 打赏
  • 举报
回复
httpXML
srz007 2004-10-11
  • 打赏
  • 举报
回复
这个和判断在线人数应该是同一类问题,没有好方法,楼上几位的方法中的弹出新窗口的方法对于一些屏蔽弹出窗口的浏览器或者机器死机之类的都没有办法处理
smartcreater 2004-10-11
  • 打赏
  • 举报
回复
agree with listhome(嗯,是时候改个有点个性的名了!!)
孟子E章 2004-10-11
  • 打赏
  • 举报
回复
<body onbeforeunload="window.open('x.aspx')">
在x.aspx再进行关闭x.aspx
孟子E章 2004-10-11
  • 打赏
  • 举报
回复
<body onbeforunload="window.open('x.aspx')">
在x.aspx再进行关闭x.aspx
gaoxiaospring 2004-10-11
  • 打赏
  • 举报
回复
可以借用VSS的check out 和check in方法,不要在Page_load中实现。
ryg221 2004-10-11
  • 打赏
  • 举报
回复
<script language="javascript">
function window.onunload()
{
if(window.event.clientX < 0 && window.event.clientY < 0)
{
window.open("");
}
}
</script>
listhome 2004-10-11
  • 打赏
  • 举报
回复
这种问题你可以搜一下!
很多!

我都回了好几次了!
listhome 2004-10-11
  • 打赏
  • 举报
回复
以前大家的解决方法是

在关闭之前打开一个新页!!

在 这个新面里处理!
123liujuan 2004-10-11
  • 打赏
  • 举报
回复
<script language="javascript">
function window.onunload()
{
if(window.event.clientX < 0 && window.event.clientY < 0)
{
window.open("log.aspx");
}
}
</script>
在log.aspx页面的page_load里面加上
Response.Write("<script Language=JavaScript>");
Response.Write("window.opener = 'xxx';window.close();");
Response.Write("</script>");

62,249

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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