【发布时间】:2010-10-10 10:41:37
【问题描述】:
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,结果你可以检查“发件人”控件。
谢谢。
【问题讨论】:
标签: asp.net javascript jquery ajax pagerequestmanager