jQuery .get XML работает в IE, но не в Chrome, Firefox - PullRequest
2 голосов
/ 17 ноября 2010

Может, кто-нибудь посоветует мне, почему следующий код работает нормально в Internet Explorer, но не в Chrome или Firefox;Я перепробовал все варианты, которые я могу использовать .get, .ajax, .load, но ни одна из них не работает.Файл XML является одним из примеров w3c, и я использую jquery-latest.min.js:

$(document).ready(function() {
 $.get("http://www.w3schools.com/xml/simple.xml", function(data){
  $(data).find("food").each(function(){
   alert($(this).find("name").text());
  });
 });
});

Спасибо за просмотр моего вопроса!

Ответы [ 2 ]

2 голосов
/ 17 ноября 2010

Это примерно Одинаковая политика происхождения : IE разрешает запросы ajax на другом хост-сайте, но другие браузеры этого не делают.Чтобы обойти это, вы можете использовать JSONP или выполнить запрос к локальному файлу php, который будет читать удаленный сайт с file_get_contents, если у вас есть allow_url_fopen true.

0 голосов
/ 17 ноября 2010

Ваш второй параметр должен быть вашими данными, а не функцией обратного вызова ( документация ) ...

jQuery.get( url, [ data ], [ callback(data, textStatus, XMLHttpRequest) ], [ dataType ] )
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...