删除div之间的所有文本而不丢失它之外的文本 - jQuery JS

时间:2009-09-06 18:09:49

标签: javascript jquery

我有一些文本存储在这样的变量中:

<div class="foo">text inside div</div>
outside text here.

我想删除整个div及其中的文本并保存外部文本。

2 个答案:

答案 0 :(得分:4)

根据HTML创建元素。然后,

$('.foo', context).remove();

例如:

var text = "<div class=\"foo\">text inside div</div>\noutside text here.";
var xml = $('<root>' + text + '</root>');
$('.foo', xml).remove();
text = xml.html();

答案 1 :(得分:1)

您可以使用after在div之后插入内部文本,然后将其删除:

var $foo = $(".foo"); 
$foo.after($foo.text()).remove(); 

或者您可以使用replaceWith函数将div元素替换为其内部文本内容:

$foo.replaceWith($foo.text());