Используйте ajax как load - PullRequest
       14

Используйте ajax как load

1 голос
/ 05 февраля 2012

Я делаю какой-то скрипт с модальным окном на fancybox, и при загрузке он заполняется некоторым содержимым из других файлов.И у меня есть несколько очередей:

Я хочу загрузить контент через ajax в мой контейнер ( # dialog-аналогия ).Но не полная страница - только один div с идентификатором ( # get-cats ).Я не знаю, как получить содержание id со страницы ajax.Это черновой сценарий:

function FillCats(catid) {
    $.ajax({
        url: "catalogue.php?cat="+catid+"&size=1",
            cache: false,  
            success: function(html){  
                    var getcat = $('#get-cats').html(html); // wrong
            $("#dialog-analogy").html(getcat);
            }  
    });
}

1 Ответ

3 голосов
/ 05 февраля 2012

Вы будете рады узнать, что функция jQuery load обладает именно той функциональностью, которая вам нужна.Вы просто добавляете селектор в конец URL.

function FillCats(catid) {
    $("#dialog-analogy").load("catalogue.php?cat="+catid+"&size=1 #get-cats");
}

См. Загрузка фрагментов страницы раздел документации load.

Живой пример с использованием load


Если по какой-то причине вы не можете использовать load, вы можете легко эмулировать его, создавая структуру того,мы получили через $() и затем извлекли нужные вам элементы:

function FillCats(catid) {
    $.ajax({
        url: "catalogue.php?cat="+catid+"&size=1",
        cache: false,
        success: function(data) {
            $("#dialog-analogy").html($(data).find("#get-cats"));
        }
    });
}

Пример в реальном времени, эмулирующий load с использованием ajax

...