JQuery,从字符串中删除元素

我有一个字符串:
var s = '<h1>heading</h1><p>para</p>';

我想从中删除h1元素.
我试过了:

$(s).remove('h1');

但是仍然包含h1元素
我也试过:

s = $(s).remove('h1');

$('h1',s).remove();

$('h1',$(s)).remove();

等等

有任何想法吗?

解决方法

更新:我看到你只是改变了问题.现在的解决方案是这样的:
var s = '<h1>heading</h1><p>para</p>';

var $s = $(s).not('h1');

$('body').append($s);​

试试看:http://jsfiddle.net/q9crX/19/

因为您现在在jQuery对象中有多个“顶级”元素,您可以使用.not()(这与.filter()基本相反)来删除h1.

这样做就是做$(s).filter(‘:not(h1)’);

> http://api.jquery.com/not/
> http://api.jquery.com/filter/

原来的答案

$(s).find('h1').remove();

所以如果你把结果追加到身体,你可以做:

var s = '<div><h1>heading</h1><p>para</p></div>';

var $s = $(s).find('h1').remove().end();

$('body').append($s);​

尝试一下:http://jsfiddle.net/q9crX/

相关文章

页面搜索关键词突出 // 页面搜索关键词突出 $(function () {...
jQuery实时显示日期、时间 html: &lt;span id=&quot...
jQuery 添加水印 &lt;script src=&quot;../../../.....
中文:Sys.WebForms.PageRequestManagerParserErrorExceptio...
1. 用Response.Write方法 代码如下: Response.Write(&q...
Jquery实现按钮点击遮罩加载,处理完后恢复 思路: 1.点击按...