2010-08-30 4 views
0

У меня возникли проблемы с записью данных (html, содержит таблицы), возвращаемыми из запроса ajax в div. код работает на Chrome, IE firefox..except (проверено на IE 8) Я использую следующий код:jQuery, html(), append() с IE

function ajax_test(option) { 
    $('.loading').fadeIn(); 
    $('.roto_messages').empty(); 
    $.get("options.php?i="+option, function(data) { 
     $('.loading').hide(); 
     $('.container').append(data); 
     $('.container').fadeIn(1000); 
     addthis.toolbox('.addthis_toolbox'); 
    }); 
} 

Я попытался с помощью .html() тоже, но это не работает на IE, а также. Спасибо.

+1

Ну что HTML-то будет возвращен из запроса? И как именно он не работает? Не добавлены ли данные? Это искажается или отображается неправильно? – prodigitalson

+0

Получил ли пустой ответ кэширование IE? Попробуйте добавить временную метку в конец URL-адреса вашего запроса. –

+0

@prodigitalson html содержит таблицы, у него много html-кодов, данные захватываются через ajax. Он добавляется в firefox, chrome..except IE. (Эта проблема связана только с jQuery 1.4.2.) – Slim

ответ

0

Есть несколько изменений, с которых я начну. Кэшируйте свои селекторы при их создании вначале и используйте цепочку. Это приводит к чему-то вроде этого:

function ajax_test(option) { 
    var 
    $loading = $('.loading'), 
    $container = $('.container'); 

    $loading.fadeIn(); 
    $('.roto_messages').empty(); 

    $.get("options.php", {i: option}, function(data) { 
     $loading.hide(); 
     $container 
     .append(data) 
     .fadeIn(1000); 

     addthis.toolbox('.addthis_toolbox'); 
    }); 
} 

Следующий вопрос, что такое addthis? Что говорит об утилите Firebug, когда вы запускаете свой вызов ajax?

+0

Firebug не жалуется на код, все работает отлично в других браузерах, кроме IE, я попробую этот код завтра утром, так как мне нужно спать очень поздно. – Slim

0

Похоже на ошибку jQuery v1.4.2, я пробовал один и тот же код с jQuery 1.3.2, и он отлично работает во всех браузерах. Btw, используя JQuery версии 1.4.2, я получаю следующее сообщение об ошибке в IE:

Message: 'null' is null or not an object 
Line: 112 
Char: 359 
Code: 0 
URI: http://www.mysite.com/jquery-1.4.2.min.js 
+0

В таблице, которую вы загружаете ... вы делаете из нее любые другие вызовы скриптов, которые имеют хаки свойств, такие как '{something: 1, something_else: 2 и т. Д.: '...'}'? – prodigitalson

+0

Из таблиц он вызывает сценарии Addthis & Sharethis, но я уже пытался их удалить, проблема не в том, что они исходят. Но проблема в том, что это происходит только с IE с использованием jquery 1.4.2, jquery 1.3.2 работает просто отлично! – Slim