Попробуйте:
html = $("div", code);
html.each(function() {
alert($(this).html());
});
Причина, по которой вы не можете сделать это так, как у вас, заключается в том, что при разборе HTML jQuery хочет иметь один корневой элемент. Если это не так, вы должны сделать это так, как описано выше. Следующий HTML / JS также будет работать:
var html = $(code);
html.children().each(....);
<div>
<div id='test'>zebra</div>
<div id='foo'>bar</div>
</div>