3

我正在尝试使用 jQuery 选择器向 DOM 添加一些内容,但我想在添加之前对其进行操作。

var $content = $('<h1>title</h1><h2 id="xx">remove me</h2><p>some content or other</p>');

$content.remove('#xx');

$('#output').append($content);

我已经把它放在了 jsfiddle 上http://jsfiddle.net/NNcG5/1/

非常感谢,迈克

4

3 回答 3

5

我会推荐$content.not('#xx').appendTo('#output');

我也用解决方案更新了你的 JS Fiddle,在这里

于 2012-07-14T14:59:07.553 回答
3

试试这样:

var $content = $('<div/>').html($('<h1>title</h1><h2 id="xx">remove me</h2><p>some content or other</p>'));
$content.find('#xx').remove();
$('#output').append($content);

现场演示

于 2012-07-14T15:00:51.683 回答
2

我认为问题源于您正在创建一个没有单个顶级元素的片段。如果您将所有内容包装在 a 中,<div>则它可以正常工作。

var $content = $('<div><h1>title</h1><h2 id="xx">remove me</h2><p>some content or other</p></div>');

编辑- 哎呀,我也完全按照 Dimitrov 先生在他的回答中所做的那样更改了您的删除代码。

于 2012-07-14T14:58:03.433 回答