Javascript 如何包装每个容器中的所有元素

Javascript 如何包装每个容器中的所有元素,javascript,jquery,html,Javascript,Jquery,Html,我需要将属于李的孩子的div打包,除了A级div。还需要将它们保存在其父母李的家中 当前html: <ul class="container"> <li> <div class="a"></div> <div class="b"></div> <div class="b"></div> </li> <li> <div class="a">&l

我需要将属于李的孩子的div打包,除了A级div。还需要将它们保存在其父母李的家中

当前html:

<ul class="container">
 <li>
  <div class="a"></div>
  <div class="b"></div>
  <div class="b"></div>
 </li>

 <li>
  <div class="a"></div>
  <div class="b"></div>
  <div class="b"></div>
 </li>
</ul>
期望输出:

<ul class="container">
 <li>
  <div class="a"></div>
   <div class="wrapped">
    <div class="b"></div>
    <div class="c"></div>
   </div>
 </li>

 <li>
   <div class="a"></div>
     <div class="wrapped">
       <div class="b"></div>
       <div class="c"></div>
     </div>
 </li>
</ul>
我以为这段代码可以做到,但它不起作用。我想使用一个变量来定义所选的div:

var selected = $("li").children().not(".a");
$(selected).each(function() {
    $(selected).wrapAll($("<div class='wrapped'></div>"));
});
var selected=$(“li”).children().not(“.a”);
$(选定)。每个(函数(){
$(选定).wrapAll($(“”);
});

迭代每个
li
,然后包装没有类
a
的子级。
wrapAll
将包装所有可能匹配的元素,因此它还将包装来自其他
li
的匹配元素

$('li')。每个(函数(){
$(this.children().not('.a').wrapAll('');
});
.wrapped{
颜色:绿色;
}

  • A. B B
  • A. B B

是否也要更改类?从
b
b
b
c