Je l'avais mis dans les DOM en premier. Je ne sais pas pourquoi mon premier exemple a échoué. C'est vraiment bizarre.
var e = $("<ul><li><div class='bar'>bla</div></li></ul>");
$('li', e).attr('id','a1234'); // set the attribute
$('body').append(e); // put it into the DOM
Mettre e (les rendements des éléments) donne jQuery contexte dans lequel appliquer le sélecteur CSS. Cela l'empêche de l'application de l'ID à d'autres éléments dans l'arborescence DOM.
Le problème semble être que vous n'êtes pas à l'aide de l'UL. Si vous mettez un nu li dans l'arborescence DOM, vous allez avoir des problèmes. J'ai pensé qu'il pourrait manipuler/solution de contournement, mais il ne peut pas.
Vous ne pouvez pas mettre à nu LI dans votre arborescence du DOM pour votre "réel" de la mise en œuvre, mais l'UL sont nécessaires pour que cela fonctionne. Soupir.
Exemple:
http://jsbin.com/iceqo
Par ailleurs, vous pouvez également être intéressé par microtemplating.