JQuery获取没有其中一个孩子的元素?

时间:2014-08-04 10:54:39

标签: javascript jquery dom-manipulation removechild

是否可以在JQuery中执行此操作:

<div>
   <h2>Test test</h2>
      <span class="test">
          HELOOOO
      </span>
</div>

如果我将上面的代码存储在变量中(例如:var content),是否有任何函数可以调用返回原始内容而没有某些特定元素?像var content = content.remove(&#39; .test&#39;)

之类的东西
<div>
   <h2>Test test</h2>
</div>

这应该是返回值吗?

1 个答案:

答案 0 :(得分:1)

这个答案应该有用。

$(content).find('.test').remove().end()[0].outerHTML仅适用于您发布的情况,而不适用于有多个&#34; root&#34;由[0]引起的元素只会选择第一个。

如果将内容包装到单个根元素中,那么它会更容易,然后您只需使用jQuery中的html()

var $template = $('<div><h1>A</h1>B<h1>A</h1>B</div><div><h1>A</h1>B<h1>A</h1>B</div>');
var filtered = $("<div>").append($template.find("h1").remove().end()).html();

alert(filtered);

http://jsfiddle.net/XY23R/1/