jQuery $ .getJSON не отправляет запрос в IE (работает в FF и Chrome) - PullRequest
2 голосов
/ 30 марта 2012

Я нахожусь в режиме отладки IE9.Я ставлю точку останова на первой строке (ниже), и она попадает.Однако моя точка останова в первой строке в обратном вызове никогда не достигается.

После просмотра вкладки Сеть я не вижу запроса к URL-адресу (установлен на "http://localhost/PopNote/").

$.getJSON(
            URL + "messages/getUnreadMessages.json?" + Math.random(), // add random to prevent IE cache
            {
                productKey      : this.productKey,
                listIds         : this.listIds,
                personEmail     : this.personEmail
            },
            function(data) {    
                if(data.messages.length == 0) return;

Почему запрос не отправляется (и только в IE)?

Спасибо!

1 Ответ

4 голосов
/ 31 марта 2012

СВЯТАЯ ГУАКАМОЛА!Это была какая-то ошибка!Вот как я это исправил:

  1. Добавлено jQuery.support.cors = true; в начало моего скрипта
  2. Добавлено crossDomain: true и dataType: 'jsonp' в мои $.ajax опции
  3. Преобразовал мой код JSON в формат JSONP, например:

    $_GET['callback'] . '(' . json_encode($data) . ');'

И VOILA! Самая сложная ошибка, которую я отладилсегодня.

...