jquery load () вообще не работает в IE8 - PullRequest
6 голосов
/ 25 августа 2011

Google полон этого вопроса, но никакие другие страницы не помогают мне.

Я попытался изменить версии jquery, попытался выполнить всю переменную $ j = jQuery.noConflict () ;, попытался изменить порядок сценариев JS / jquery, попробовал не использовать кэширование, предложенное веб-сайтом jquery, но мой load () не ' т работа.

<a onclick="loadCont('canyou.php');">Can you help us</a>


function loadCont(file){
$j("#maincont").load(file);
alert(file);
return false;
}

Как всегда, он загружается в любом другом браузере, кроме IE8. Alart () существует для отладки IE8, и файл успешно передан, он просто не загружен в # maincont

Любая помощь по поводу кода или ответов приветствуется. Спасибо

Ответы [ 3 ]

1 голос
/ 25 августа 2011

Попробуйте настроить это немного по-другому. Используйте следующий код и посмотрите, получите ли вы какие-либо результаты.

HTML

<!-- link with ajax target in href -->
<a class="loadlink" href="canyou.php">Can you help us</a>

JQuery

<html>
<head><title>can you</title></head>
<body>
    <!-- we only want to load content from this div -->
    <div id="content">This is the only content we want returned...</div>
</body>
</html>

EDIT

Если файл canyou.php содержит полный html-скелет с тегами <html> и <body>, то jQuery должен анализировать только тот HTML-код, который вы хотите с этой страницы, и отбрасывать остальные (вы не хотите пихать <html> или <body> тегов в ваш #maincont div). Вы можете сделать это с помощью jQuery, добавив пробел и селектор после параметра URL в методе load (). Вот пример HTML:

<html>
<head><title>can you</title></head>
<body>

    <div id="content">
        This is the only content we want returned...
    </div>
</body>
</html>

Вот как будет выглядеть новый вызов load:

$('#maincont').load($(this).attr('href') + ' #content');    // Only get the content in #content div
0 голосов
/ 17 сентября 2013

Йо Бро. Вы забыли e.preventDefault ();

Если вы хотите, чтобы ссылка открывалась в div на вашей текущей странице, например:

<a class="loadlink" href="canyou.php">Can you help us</a>

Ваш jQuery должен выглядеть так ::

$("a.loadlink").click(function(e){
e.preventDefault(); //this prevents the redirect that the <a> tag makes on default

// then enter the rest of your jQuery here:
var file = $(this).attr("href");
$("#maincont").load(file);
});

Это должно работать 'plug-n-play'.

0 голосов
/ 07 июня 2012

буква j между $ и (. это нормально?

это не $("#maincont").load(file);

Я использую нагрузку с IE8 ... она работает хорошо лично

...