Ответ обрезки IE: текст $ .ajax ()! - PullRequest
2 голосов
/ 09 января 2012

Вот фрагмент jQuery, который я написал, который читает данные изображения и оповещает их.

    var jj = $.ajax({
        url: "/app/loading.gif",
        success: function (a) {
            alert(jj.responseText);
        },
    });

Во всех браузерах он работает правильно, но в IE .responseText обрезается до 9-10 символов, и это потому, что IE разбивает строковое представление ответа, когда он достигает символа, которого нет в ISO-8859.

Есть ли у вас какие-либо идеи, какие обходные пути для этого есть?

ПРИМЕЧАНИЯ

  • Я не могу использовать base64, потому что он значительно увеличивает размер файла
  • страница, на которой я пишу этот скрипт, представляет собой статическую HTML-страницу и обслуживается IIS-7.0, но мне нужно сохранить абсолютное минимальное изменение обслуживания. (из-за причин распространения)
  • Я надеялся, что смогу прочитать byte[] из ответа вместо .responseText, но не смог найти способ сделать это.
  • или, может быть, в javascript есть что-то вроде UnicodeString, чтобы я мог сопоставить с ним ответ ajax?

Любая помощь очень ценится.

1 Ответ

0 голосов
/ 09 января 2012

Попробуйте добавить это:

contentType: "image/gif; charset=utf-8",
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...