微软Callback中的一个Bug
今天使用微软的CallBack做控件,遇到一个奇怪的错误,调试后才发现是微软Javascript代码中的一个小Bug。
给大家提个醒。
1
function WebForm_CallbackComplete() {
2
for (i = 0; i < __pendingCallbacks.length; i++) {
3
callbackObject = __pendingCallbacks[i];
4
if (callbackObject && callbackObject.xmlRequest && (callbackObject.xmlRequest.readyState == 4)) {
5
WebForm_ExecuteCallback(callbackObject);
6
if (!__pendingCallbacks[i].async) {
7
__synchronousCallBackIndex = -1;
8
}
9
__pendingCallbacks[i] = null;
10
var callbackFrameID = "__CALLBACKFRAME" + i;
11
var xmlRequestFrame = document.getElementById(callbackFrameID);
12
if (xmlRequestFrame) {
13
xmlRequestFrame.parentNode.removeChild(xmlRequestFrame);
14
}
15
}
16
}
17
}
注意其中的变量i,没有使用var 定义。如果在你的Javascript中也使用了 没有使用var定义的变量i,那就一定会出错了。呵呵。
function WebForm_CallbackComplete() {2
for (i = 0; i < __pendingCallbacks.length; i++) {3
callbackObject = __pendingCallbacks[i];4
if (callbackObject && callbackObject.xmlRequest && (callbackObject.xmlRequest.readyState == 4)) {5
WebForm_ExecuteCallback(callbackObject);6
if (!__pendingCallbacks[i].async) {7
__synchronousCallBackIndex = -1;8
}9
__pendingCallbacks[i] = null;10
var callbackFrameID = "__CALLBACKFRAME" + i;11
var xmlRequestFrame = document.getElementById(callbackFrameID);12
if (xmlRequestFrame) {13
xmlRequestFrame.parentNode.removeChild(xmlRequestFrame);14
}15
}16
}17
}给大家提个醒。
posted on 2006-11-03 14:12 sherwinzhu 阅读(482) 评论(0) 收藏 举报


浙公网安备 33010602011771号