Как найти элемент в обратном вызове AJAX с помощью JQuery? - PullRequest
1 голос
/ 28 января 2012

Всякий раз, когда я пытаюсь найти, скажем, тело возвращенной страницы из AJAX, оно возвращает ноль. Вот мой код JQuery:

$(document).ready(function(){
$("#button").click(function(){
    $.ajax({
            url: 'testpagec.php', 
            type: 'GET',

            success: function(data) {
                var test = $(data).find('body');
                alert(test.html());

            }
        });
    return false;
});
});

На бумаге это выглядит идеально, но не работает так, как задумано. Есть идеи по исправлению? Спасибо.

1 Ответ

4 голосов
/ 28 января 2012

Что работает для меня, так это

 var $data = $('<div>').html( data ); 
 $data.find('body'); // this works now

Причина, по которой вышеперечисленное работает, заключается в том, что body не был предком, следовательно, find не работал, предоставляя данные элементу корневого уровня, который обеспечитнайти работы.Вы также можете использовать .filter.

$data.filter('body');  
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...