我正在尝试在进行异步调用时向用户显示一个面板,但仅在特定调用发生时才显示。
使用正常的“get control”脚本我喜欢:
function pageLoad() {
try {
var manager = Sys.WebForms.PageRequestManager.getInstance();
manager.add_endRequest(OnEndRequest);
manager.add_beginRequest(OnBeginRequest);
}
catch (err) { }
}
function OnBeginRequest(sender, args) {
//alert('Start\n\n' + sender + '\n\n' + args);
var p = document.getElementById('ajaxLoadingPanel');
p.style.visibility = 'visible';
p.style.display = 'inline';
}
function OnEndRequest(sender, args) {
//alert('End\n\n' + sender + '\n\n' + args);
var p = document.getElementById('ajaxLoadingPanel');
p.style.visibility = 'hidden';
p.style.display = 'none';
}
但我的问题是我如何知道发件人和args的方法?
我去了through the MSDN并且他们没有谈论我们可以使用的方法,VS2008中没有关于这部分的智慧......
任何想法?我想得到一个发件人和args的方法和属性列表,我可以使用这个javascript API。
答案 0 :(得分:1)
此文档很有帮助: http://msdn.microsoft.com/en-us/library/bb398976.aspx
它有一个关于PageRequestManager上所有事件的表以及它们的事件参数。然后事件args记录它们的属性等。发送方始终是PageRequestManager。
答案 1 :(得分:0)
在ScriptDebugger中调试并找出sender和args的内容 你可以确定哪个控件导致了回发
答案 2 :(得分:0)
要知道哪个元素导致了回发,您可以使用args.get_postBackElement().id
。