Problem: a BUG in the jQuery Control
When $. ajax is used, an error occurs only in IE7. IE6 and IE8 are normal. The error message is as follows:
Description on the official forum:
Http://forum.jquery.com/topic/object-doesn-t-support-this-property-or-method-from-jquery-1-4-1-in-ie7-only
Http://dev.jquery.com/ticket/6498
Http://dev.jquery.com/ticket/6314
Solution:
Modify jquery-1.4.2.js.
I have tested the modification method proposed on the forum.
Copy codeThe Code is as follows:
Hi, I found this seems to relate to jQuery bug 6314 (http://dev.jquery.com/ticket/6314 ). in IE7, if "Enable native XMLHTTP support" is checked (under Tools> Internet Options> Advanced tab> inside the security section) then this error shows up. unchecking/disabiling the option seems to resolve the error.
However, since I cannot tell all website viewers to uncheck that option, then the following code also seems to resolve the issue:
In non-minified jQuery, find the lines:
Try {
Var oldAbort = xhr. abort;
Xhr. abort = function (){
If (xhr ){
OldAbort. call (xhr );
}
Onreadystatechange ("abort ");
};
} Catch (e ){}
Replace it with the following code:
Try {
Var oldAbort = xhr. abort;
Xhr. abort = function (){
If (xhr ){
If (oldAbort. call === undefined ){
OldAbort ();
} Else {
OldAbort. call (xhr );
}
}
Onreadystatechange ("abort ");
};
} Catch (e ){}
I believe the issue is as stated by other users in this forum, that the xhr (XMLHTTP) object is a native IE object, so the abort function on the xhr. abort function does not support call.