如何从innerHtml创建jQuery对象?

时间:2011-08-22 20:49:08

标签: javascript jquery

我有一个字符串,其中包含对象的innerHtml(通过调用$.html()收到)。

如何基于该字符串创建jQuery对象?

3 个答案:

答案 0 :(得分:5)

$(htmlString)

这将保存字符串中的所有元素。

答案 1 :(得分:1)

如果您仍然使用原始jQuery对象,则可以使用.html()方法直接访问其子项:

.children()

这会将它们作为jQuery数组返回。

答案 2 :(得分:1)

var newelement= $('<div/>');
newelement.html(htmlString);

这与SLaks的答案略有不同,因为它保留了直接文本节点的子节点。 jQuery的$(htmlString)构造快捷方式与其许多功能一样,只处理Element节点而不处理Text节点。

因此,如果htmlString'foo<bar>bof</bar>zot',并且您希望保留foozot,那么您必须这样做。

与Xion的答案类似,如果您想保留直接文本节点子节点,则必须使用更不寻常的contents()方法而不是children()