Bug Tracker

Ticket #2890: ajax.httpData

File ajax.httpData, 876 bytes (added by mnichols, 14 years ago)

Implements similar semantics for all dataTypes not html

Line 
1Index: ajax.js
2===================================================================
3--- ajax.js     (revision 5584)
4+++ ajax.js     (working copy)
5@@ -453,17 +453,19 @@
6        httpData: function( r, type ) {
7                var ct = r.getResponseHeader("content-type"),
8                        xml = type == "xml" || !type && ct && ct.indexOf("xml") >= 0,
9+                       script = type == "script" || !type && ct && ct.indexOf("script") >= 0,
10+                       json = type == "json" || !type && ct && ct.indexOf("json") >= 0,
11                        data = xml ? r.responseXML : r.responseText;
12 
13                if ( xml && data.documentElement.tagName == "parsererror" )
14                        throw "parsererror";
15 
16                // If the type is "script", eval it in global context
17-               if ( type == "script" )
18+               if ( script )
19                        jQuery.globalEval( data );
20 
21                // Get the JavaScript object, if JSON is used.
22-               if ( type == "json" )
23+               if ( json )
24                        data = eval("(" + data + ")");
25 
26                return data;