Skip to content
Permalink
Browse files

Fixed #2174 by removing the s.dataType == "json" check for possible c…

…ross domain since it causes absolute urls to use a <script> tag ajax retrieval even though absolute urls work fine for retrieving local data. Cross-domain jsonp will still work since the $.ajax() function actually changes the s.dataType to "script" before it reaches this check in cases where it is s.dataType == "jsonp" or s.dataType == "json" and a parameter has =? in it.
  • Loading branch information
davids549 committed Jan 17, 2008
1 parent dcb46c7 commit 0635df43914eec10e4b468ddb2f952f5024c644e
Showing with 5 additions and 5 deletions.
  1. +1 −1 src/ajax.js
  2. +4 −4 test/unit/ajax.js
@@ -232,7 +232,7 @@ jQuery.extend({

// If we're requesting a remote document
// and trying to load JSON or Script with a GET
if ( (!s.url.indexOf("http") || !s.url.indexOf("//")) && ( s.dataType == "script" || s.dataType =="json" ) && s.type.toLowerCase() == "get" ) {
if ( (!s.url.indexOf("http") || !s.url.indexOf("//")) && s.dataType == "script" && s.type.toLowerCase() == "get" ) {
var head = document.getElementsByTagName("head")[0];
var script = document.createElement("script");
script.src = s.url;
@@ -649,15 +649,15 @@ test("$.getJSON(String, Function) - JSON object", function() {
});
});

test("$.getJSON(String, Function) - Remote JSON object with assignment", function() {
test("$.getJSON(String, Function) - JSON object with absolute url to local content", function() {
expect(2);

var base = window.location.href.replace(/\?.*$/, "");

stop();
$.getJSON(base + "data/json_assigned_obj.js", function() {
ok( typeof json_assigned_obj == "object", 'Check JSON loaded' );
equals( json_assigned_obj.test, "worked", 'Check JSON obj.test' );
$.getJSON(url(base + "data/json.php"), function(json) {
ok( json.data.lang == 'en', 'Check JSON: lang' );
ok( json.data.length == 25, 'Check JSON: length' );
start();
});
});

0 comments on commit 0635df4

Please sign in to comment.
You can’t perform that action at this time.