asp.net – 检查控制启动的AJAX请求
发布时间:2020-12-16 09:29:47 所属栏目:asp.Net 来源:网络整理
导读:asp.net 2.0 / jQuery / AJAX script type="text/javascript"//updated to show proper method signaturevar prm = Sys.WebForms.PageRequestManager.getInstance();prm.add_endRequest(hideMessage);function hideMessage(sender,args){ var ctl = args.get
asp.net 2.0 / jQuery /
AJAX
<script type="text/javascript"> //updated to show proper method signature var prm = Sys.WebForms.PageRequestManager.getInstance(); prm.add_endRequest(hideMessage); function hideMessage(sender,args) { var ctl = args.get_postBackElement(); //check if ctl is the disired control //hide user notification message } </script> 我在页面上有几个可能启动AJAX请求的控件,但我只想在点击一个特定按钮时触发我的js.我如何检查启动请求的控件,以便我可以相应地触发JS. 编辑:我解决了这个问题,但我仍然想知道我是否可以这样做. 澄清:我无法从onclick事件中调用JS,因为该页面位于UpdatePanel内部,我只希望JS在AJAX请求结束时执行,并且它是由页面上的一个特定按钮触发的.在服务器端,我将myLabel.Text设置为某些文本,然后js检查$(myLabel.CliendID)的innerHTML是否为空并触发js.检查innerHTML是我的解决办法,因为我无法弄清楚如何检查AJAX请求的“发送者”.希望现在这更有意义. edit2:我已经阅读了一些documentation,结果你可以检查“发送者”控件. 谢谢. 解决方法
这就是我在代码中所做的工作,以确定哪个控件初始化了请求.所有的JavaScript代码.
function pageLoad() { if (!Sys.WebForms.PageRequestManager.getInstance().get_isInAsyncPostBack()) { Sys.WebForms.PageRequestManager.getInstance().add_endRequest(endRequestHandler); Sys.WebForms.PageRequestManager.getInstance().add_initializeRequest(initializeRequest); } } function endRequestHandler(sender,args) { if (sender._postBackSettings.sourceElement.id == '<%= gvResults.ClientID %>') { //do something because of this... } } function initializeRequest(sender,args) { if (CheckForSessionTimeout()) { args.set_cancel(true); } else { if (sender._postBackSettings.sourceElement.id == '<%= gvResults.ClientID %>') { //do something because of this } } } EDITHere是在客户端检查超时的方法. var sessionTimeoutDateTime = new Date(); var sessionTimeoutInterval = <%= this.SesstionTimeoutMinutes %>; function CheckForSessionTimeout() { var currentDateTime = new Date() var iMiliSeconds = (currentDateTime - sessionTimeoutDateTime); if (iMiliSeconds >= sessionTimeoutInterval) { ShowSessionTimeout(); return true; } return false; } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 使用什么方法将ASP.Net应用程序部署到野外?
- asp.net – 如何在页面加载中以编程方式向页面添加控件?
- asp.net-mvc – 注入AutoMapper实例
- asp.net-mvc – 什么CAPTCHA系统与ASP.NET MVC兼容?
- asp.net – 自动修复与’ASPStateTempSessions’相关的temp
- 如何从ASP.NET 2.0 Web应用程序中的客户端脚本调用ASP.NET
- asp.net-mvc-2 – 使用ASP.NET MVC 2时更好地保留过滤选项的
- asp.net-mvc – Asp.Net MVC 2 Label自定义文本
- JS_单个或多个文件上传_不支持单独修改
- 新浪出输入法了,深蓝词库转换更新到1.3.1——增加对新浪拼
推荐文章
站长推荐
- asp.net-mvc – 使用GoogleOAuth2Authentication
- asp.net-mvc – 哪个更适合为我的网站构建API:M
- asp.net – System.Data.OleDb.OleDbException:
- asp.net-mvc – 使用哪个:“AcceptGet,AcceptPo
- asp.net-mvc – 地址字段的自定义ASP.NET MVC验证
- 如何在多个ASP.NET请求中更新EF中的实体而不再检
- 如何启用用户从唯一一台计算机(通过获取CPU Seri
- asp.net-mvc-3 – 将我的MVC 3应用程序迁移到MVC
- asp.net-mvc – Checkbox不与嵌套对象绑定
- asp.net-mvc – ASP.NET MVC请求过滤器
热点阅读