Оберните ваши обработчики этим кодом, чтобы дождаться загрузки всех необходимых скриптов, прежде чем вызывать Sys.WebForms.PageRequestManager
Sys.Application.add_init(function(){ ... your code ....}
http://msdn.microsoft.com/en-us/library/bb397532.aspx
РЕДАКТИРОВАТЬ: причина ошибкив этой строке Sys.WebForms.PageRequestManager.getInstance().add_beginRequest(BeginRequestHandler)
сценарии еще не загружены, поэтому, если вы хотите обработать асинхронную обратную передачу, вы должны написать что-то вроде этого:
Sys.Application.add_init(function(){
Sys.WebForms
.PageRequestManager
.getInstance()
.add_beginRequest(BeginRequestHandler)
});
Что это означает на простом английском языке?Дождитесь загрузки всех сценариев (включая Sys.WebForms
пространство имен) и подпишитесь на событие beginRequest
Ваш блок сценариев должен выглядеть следующим образом:
<script type="text/javascript">
Sys.Application.add_init(function () {
Sys.WebForms.PageRequestManager.getInstance().add_beginRequest(BeginRequestHandler);
});
Sys.Application.add_init(function () {
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler);
});
function BeginRequestHandler(sender, args) {
AsynProcessing('block', 'AlertDiv', 'ProcessingImage');
}
function EndRequestHandler(sender, args) {
AsynProcessing('none', 'AlertDiv', '');
}
function AsynProcessing(visstring, elem, img) {
var adiv = $get(elem);
adiv.style.display = visstring;
adiv.image = img;
}
</script>