刚刚在论坛看到一个帖子说报了”ASP.NET Ajax 客户端框架未能加载""Sys"未定义“这个错误。想起4年前使用ajax控件包时候的处理方式。贴出来以供参考。
原理:在ajax中,session容易丢失,故当控制权回到浏览器端的时候,给scriptmanager增加了一个函数 ,可以直接放在页面中使用。
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler);
function EndRequestHandler(sender, args)
{
if (args.get_error() != undefined)
{
if(args.get_error().message.substring(0, 51) == "Sys.WebForms.PageRequestManagerParserErrorException")
{
//window.location.reload(); //出现Session丢失时的错误处理,可以自己定义。
document.getElementById("登陆控件的ID").click();
}
else
{
alert("发生错误!原因可能是数据不完整,或网络延迟。"); //其他错误的处理。
}
args.set_errorHandled(true);
}
}