0

I am having the same problem, but in the console of the F12 of IE9, it says:

SCRIPT575: Could not complete the operation due to error c00c023f. 
prototype.js?v=7.6, line 1361 character 7

and if I click the second line it takes me to the script tab to that file:

Ajax.Response = Class.create({
  initialize: function(request){
    this.request = request;
    var transport  = this.transport  = request.transport,
        readyState = this.readyState = transport.readyState;

    if((readyState > 2 && !Prototype.Browser.IE) || readyState == 4) {
      this.status       = this.getStatus();
      this.statusText   = this.getStatusText();
      this.responseText = String.interpret(transport.responseText);
      this.headerJSON   = this._getHeaderJSON();
    }

    if(readyState == 4) {
      var xml = transport.responseXML;
      this.responseXML  = Object.isUndefined(xml) ? null : xml;
      this.responseJSON = this._getResponseJSON();
    }
  },

pointing the 10th line:

this.responseText = String.interpret(transport.responseText);

How can I solve this?

Rob W
  • 341,306
  • 83
  • 791
  • 678
Pablo
  • 21
  • 5
  • 1
    Possible dupe of http://stackoverflow.com/questions/7287706/ie-9-javascript-error-c00c023f – James Oct 26 '11 at 14:54
  • Not quite a duplicate-- this question involves Prototype, and the questioner might feel reluctant to modify the the Prototype code directly to fix the problem. – Paul Lynch Aug 29 '12 at 23:10

2 Answers2

0

As James points out, this error is likely due to the cause discussed here: https://stackoverflow.com/a/7288000/360782. The solution offered there is unappealing in this case because it would require editing the Prototype library. Instead of doing that, I worked around the problem by overriding the respondToReadyState change method so I could trap the error. Here's the monkey patch (against prototype 1.7). Put the following in your code after Prototype is loaded but before it is used:

Ajax.Request.prototype.respondToReadyState_orig =
  Ajax.Request.prototype.respondToReadyState;
Ajax.Request.prototype.respondToReadyState = function(readyState) {
  // Catch the exception, if there is one.
  try {
    this.respondToReadyState_orig(readyState);
  }
  catch(e) {
    this.dispatchException(e);
  }
};
Community
  • 1
  • 1
Paul Lynch
  • 1,297
  • 13
  • 20
0

Remove the encoding:

charset=ISO-8859-1

The encoding can give this problem.

Brandon
  • 68,708
  • 30
  • 194
  • 223