Помощь с ошибками IE при написании JSON через ответ ASPX - PullRequest
1 голос
/ 18 июня 2010

У меня есть страница ASPX, которую я использую для написания JSON.Он отлично работает в Firefox и Chrome, но когда я пытаюсь использовать его в IE 8, он выдает ошибку «Страница XML не может быть отображена» вместо того, чтобы позволить jQuery загружать JSON, записываемый ответом.

Есть идеи?

Вот как выглядит мой код:

   protected override void OnLoad(EventArgs e)
    {
        Response.Clear();
        Response.ClearHeaders();
        Response.ContentType = "application/json";
        Response.Cache.SetCacheability(HttpCacheability.NoCache);
        Response.Write(string.Format("[ {{ \"Foo\": \"{0}\", \"bar\": \"{1}\" }} ]", "Foo Content", "Bar Content"));
        Response.End();
    }

Ответы [ 3 ]

1 голос
/ 19 июня 2010

В итоге я «решил» проблему, не указав тип контента.Не уверен, почему это не работает с типом контекста, как отмечено выше.Я использовал его для других вещей без проблем.

0 голосов
/ 18 июня 2010

что если вы избавитесь от [] в строке json? это не выглядит необходимым

также вы можете использовать сериализатор JSON, встроенный прямо в .net, и он определенно будет совместим с ie8.

System.Web.Script.Serialization.JavaScriptSerializer

http://blogs.msdn.com/b/rakkimk/archive/2009/01/30/asp-net-json-serialization-and-deserialization.aspx

0 голосов
/ 18 июня 2010

Можете ли вы опубликовать используемый вами jQuery? Проблема, скорее всего, существует, поскольку существуют некоторые различия в способах обработки запросов Javascript и AJAX в IE и Firefox.

Из-за этой ошибки кажется, что IE может пытаться загрузить JSON как веб-страницу вместо того, чтобы делать запрос AJAX.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...