2016-02-03 2 views
0

Я делаю сообщение ajax, которое возвращает некоторый html, и я хочу узнать, сколько divs с классом записи есть в возвращаемом html, а затем прокручивать их.Parse html from variable в объект jQuery

$.post(url, { 'data' : 'qdewde' }, function(data) { 
    alert($('entry', data).length); 

    $('.entry', data).each(function() { 
     // do something here 
    }); 
}, 'html'); 

HTML вернулся:

<!DOCTYPE html> 
<html lang="en"> 
<head> 
<body> 
    <div class="entry"><h1>Entry 1</h1></div> 
    <div class="entry"><h1>Entry 2</h1></div> 
    <div class="entry"><h1>Entry 3</h1></div> 
</body> 
</html> 

Оповещение просто выводит 0, хотя и я не могу проходной каждый .entry объекта. Что я делаю не так?

ответ

1

Для этого вы можете создать виртуальный DIV, чтобы держать ответ только тогда вы можете получить длину:

$.post(url, { 'data' : 'qdewde' }, function(data) { 
    var vd = $('<div>', {html:data}); 
    alert(vd.find('.entry').length); 
}, 'html');