怎样用javascript调用.cs中的方法

之穆 2005-08-08 02:59:55
我想做在关闭页面时,即点页面右上角小叉关闭页面,修改数据库中的记录。我的body中的onbeforeunload事件中写javascript,想调用.cs中的方法。但是,我不知道该怎么调用,那位老大能给以下指点,越详细越好!
...全文
550 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
稍微有点无敌 2005-08-08
  • 打赏
  • 举报
回复
呵呵!!学习!!!
感觉真爽!!
evlon 2005-08-08
  • 打赏
  • 举报
回复
客户端:
---------------------------------------------
function callhttp(url,prms)
{
var http = new ActiveXObject("Microsoft.XMLHTTP");

http.open("GET",url + '?' + prms,false);
http.send();

return http.responseText;
}

window.onbeforeunload= function()
{
callhttp('logout.aspx')
}


服务端
-----------------------
LogoutHandle.cs
-------------------------
using System;
using System.Web;

namespace Cutech.NetOa.HttpHandler
{
/// <summary>
///
/// </summary>
public class LogoutHandler :System.Web.IHttpHandler
,System.Web.SessionState.IRequiresSessionState
{
public LogoutHandler()
{
//
// TODO: 在此处添加构造函数逻辑
//
}
#region IHttpHandler 成员

public void ProcessRequest(System.Web.HttpContext context)
{
context.Session.Abandon();
context.Response.Write("1");

//context.Response.Redirect("login.aspx");
}

public bool IsReusable
{
get
{
// TODO: 添加 LogoutHandle.IsReusable getter 实现
return true;
}
}

#endregion
}
}

web.config
--------------
<httpHandlers>

<add verb="GET" path="logout.aspx" type="Cutech.NetOa.HttpHandler.LogoutHandler,Cutech.NetOa"/>
</httpHandlers>
WZCNet 2005-08-08
  • 打赏
  • 举报
回复
同意楼上的,不过可以省掉一个Server Button
codeangel 2005-08-08
  • 打赏
  • 举报
回复
一个简单的方法
1.在你的webPage上放一个server button control .ID=btnOK
将它的外观设置看不见,双击它写下你在要在CS中调用的方法过程.
2.再放一html button control ,ID=btnClick
写下他的执行的js,<input type=button onclick=clickMe() >
如:
function clickMe()
{
document.all.btnOK.click();//执行你的方法
}
阿牛在线 2005-08-08
  • 打赏
  • 举报
回复
以下方法仅供参考:
使用xmlhttp调用一个.aspx,
并传参数给这个.aspx文件(假入你的.cs的文件中的方法有参数的话),
然后在.aspx文件中调用.cs文件.
获得处理结果
并返回结果
在你要调用该.cs文件的页面上获得输出.
这样 你就不要打开新的页面了。
aspdinet 2005-08-08
  • 打赏
  • 举报
回复
小M的方法是可以的,我以前做过类似的,可以实现,帮你顶一下。
或者你直接在写一个方法,然后用<body onunload=方法>也可以的。
chxuxu 2005-08-08
  • 打赏
  • 举报
回复
同意楼上
xiaomaolover 2005-08-08
  • 打赏
  • 举报
回复
我有一个方法,
你先做一个
Button id ='but_unload' runat=server在它的事件里面写.你要退出执行的内容.

然后在<body onunload="__doPostBack('but_unload',null)">

代码没有试,
不过调用__doPostBack
可以实现
Happy2046 2005-08-08
  • 打赏
  • 举报
回复
关注,并帮你顶
lovefootball 2005-08-08
  • 打赏
  • 举报
回复
你这样写得话,页面跳转也会执行的

可以参考无刷新联动的方法

用js+xmlhttp
du9232 2005-08-08
  • 打赏
  • 举报
回复
记号。帮顶一下
smoothwood 2005-08-08
  • 打赏
  • 举报
回复
可以在onbeforeunload的时候,新打开一页,在这一页里边处理

或者,如果在onbeforeunload的时候模拟点击了某个按钮,然后submit页面

62,072

社区成员

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

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

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

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