这时一个由于asp.net2.0客户端回调脚本中的一个bug。
function WebForm_CallbackComplete() {
for (i = 0; i < __pendingCallbacks.length; i++) {......}
}
上面黄色标示的代码中使用的全局变量i,因此而产生的错误。
正确代码:for (var i = 0; i < __pendingCallbacks.length; i++) {......}
由于以下几种情况引起
1、 连续调用回调函数或嵌套调用回调函数
2、回调处理函数中存在变量i
1、解决方法
在连续调用或嵌套调用回调函数时使用setTimeout来调用。
例如:setTimeout("WebForm_DoCallback('call',0,GetCallBack,'',null,false)",1);
setTimeout("WebForm_DoCallback('call',1,GetCallBack,'',null,false)",1);
2、解决方法
function GetCallBack(arg,context)
{
//这个回调用处理函数中不要使用变量
}