我在 asp.net 2.0 上使用 asp.net ajax 1.0 版。(我还不能升级到 3.5)
我有一个 PageMethod 会被 Javascript 调用。在我将 UpdatePanel 添加到页面的另一部分之前,这非常有效。现在,当我在打开调试的情况下运行页面时,页面方法中的断点永远不会被调用。当我在萤火虫中查看调用 PageMethod 的帖子时返回的内容时,我注意到返回了整个 aspx 页面,而不仅仅是调用值。我做了什么?
这是对 PageMethod 的 Javascript 调用:
function EndRequestHandler(sender, args) {
$('#selectedCHK').change(
function() {
var chkedInput = $('#selectedCHK');
var networkRead = chkedInput[0].checked;
PageMethods.ChangeSelectedNetworkReadFlag(routeNum,
networkRead,
function(msg) { alert(msg); });
}
);
}
$(document).ready(function() {
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler);
}
在每个请求结束时调用 EndRequestHandler 函数的意义在于,ID 为“#selectedCHK”的项目位于更新面板内,并且每次刷新 UpdatePanel 时都需要设置事件。