将html字符串插入jquery对象?

时间:2011-02-19 18:19:21

标签: jquery

我有以下结构:

var $html = $("<div id='a'><div id='b'><div id='c'></div></div></div>");

我想将以下内容插入div #c下的$ html结构中:

var html = "<div id='d'><div id='e'><div id='f'></div></div></div>";

我尝试了以下内容:

var $newHtml = $($html).find("#c").append(html);

我认为现在变量$newHtml将指向div #a及其所有降序元素,包括新添加的元素。

但是,$newHtml只包含#c div和decendants。

如何获取#a对象及其后代?

更新

澄清:

我有jquery对象$html和字符串html

我想将html字符串插入$html结构的最内层元素中。

both append & html works for it. The problem is, $newHtml only holds the elements of #c. $html contains all, including inserted elements.

3 个答案:

答案 0 :(得分:2)

你可以做到

$('#c').append(html);

没有理由将结果设置为变量。几乎所有jQuery方法都返回jQuery object,这允许您将方法链接在一起。

答案 1 :(得分:0)

我认为$html已经是一个jQuery对象。因此您无需使用$($html).find,只需执行$html.find

此外,我认为你会想要使用html方法而不是append,但我可能错了。

编辑Yeah, I was wrong.附加应该可以正常工作。

答案 2 :(得分:0)

var $newHtml = $('#c', $html).html(html);