Added support for parsererror errors from Ajax requests (bug #1145).

This commit is contained in:
John Resig 2007-07-21 00:52:30 +00:00
parent 3740716480
commit e20e8e6e3c

View File

@ -662,7 +662,7 @@ jQuery.extend({
} else
jQuery.handleError(s, xml, status);
} catch(e) {
status = "error";
status = "parsererror";
jQuery.handleError(s, xml, status, e);
}
@ -757,8 +757,11 @@ jQuery.extend({
*/
httpData: function( r, type ) {
var ct = r.getResponseHeader("content-type");
var data = !type && ct && ct.indexOf("xml") >= 0;
data = type == "xml" || data ? r.responseXML : r.responseText;
var xml = type == "xml" || !type && ct && ct.indexOf("xml") >= 0;
data = xml ? r.responseXML : r.responseText;
if ( xml && data.documentElement.tagName == "parsererror" )
throw "parsererror";
// If the type is "script", eval it in global context
if ( type == "script" )