Выборка данных JSON из jquery не поддерживается различными браузерами - PullRequest
0 голосов
/ 08 июня 2011

У меня есть html-страница, на которой я извлекаю данные статического json-файла, который переименовывается в .js-файл, и размещаю его где-нибудь на локальном сервере, например, 10.211.20.62:8080/case1/county_json.js*1001.*

Я использую код, который работает должным образом, например, в 6, 7, 8, но не в Google Chrome, Firefox и других браузерах.

Код Javascript

function setfilter() {
$.getJSON('http://10.211.20.62:8080/case1/county_json.js', function (data) {
}).error(function(jqxhr, textStatus, errorThrown) {
alert(errorThrown);   
});
}


$(document).ready(function () { 
jQuery.support.cors = true;
setfilter();
});

что следуетбыть проблема?ПОЖАЛУЙСТА, ПОМОГИТЕ!

Ответы [ 2 ]

0 голосов
/ 09 июня 2011

Если URL содержит строку "callback =?"(или аналогичный, как определено серверным API), вместо этого запрос обрабатывается как JSONP (http://api.jquery.com/jQuery.getJSON/).

Try:

$. getJSON ('http://10.211.20.62:8080/case1/county_json.js?callback=?', function (data) {}). error (функция (jqxhr, textStatus, errorThrown) {alert (errorThrown);
});

0 голосов
/ 08 июня 2011

Если я правильно понимаю, ваша HTML-страница не находится на том же сервере, что и данные.Тогда проблема заключается в политике того же происхождения (см. https://developer.mozilla.org/en/Same_origin_policy_for_JavaScript). Возможно, MSIE работает, потому что там у вас есть специальные правила для локальной зоны. Но в целом вы не можете загрузить данные JSON с другого сервера.

...