Javascript 第二组,两个潜水艇相互对峙

Javascript 第二组,两个潜水艇相互对峙,javascript,jquery,html,Javascript,Jquery,Html,也许这有点傻,但还是不管用。一、 我试图用另一个div包装两个不同类的div,但我当前的输入只是自动关闭div 有几组div具有两个集合上的.panel heading和.panel body类 我试图用一个div和一个.panel默认类来包装每一对,但是我的代码关闭了div,所以它只创建了两个空div。我不知道我的代码有什么问题。我正在使用jquery <html> <body> <div class="panel-head"></div>

也许这有点傻,但还是不管用。一、 我试图用另一个div包装两个不同类的div,但我当前的输入只是自动关闭div

有几组div具有两个集合上的.panel heading和.panel body类

我试图用一个div和一个.panel默认类来包装每一对,但是我的代码关闭了div,所以它只创建了两个空div。我不知道我的代码有什么问题。我正在使用jquery

    <html>
<body>
<div class="panel-head"></div>
<div class="panel-body"></div>
<div class="panel-head"></div>
<div class="panel-body"></div>
<div class="panel-head"></div>
<div class="panel-body"></div>
</body>
</html>

还有jquery

$('div.panel-head').before (
'<div class="panel panel-default">');
$('div.panel-body').after ('</div>');
$('div.panel-head')。之前(
'');
$('div.panel-body')。在('')之后;
但是这段代码创建了两个div,自动关闭和打开标记,不允许环绕。我无法创建JSFIDLE,因为我在智能手机上使用im,也无法在pc上使用internet。请有人告诉我如何绕过这种行为

我从以下方面获取此信息:

$(“.panel head”)。每个(函数(){
$(this.next(“.panel body”).addBack().wrapAll(“”)
});
编辑


最初它使用的是
和self()
,但它已被弃用,我用
addBack()

对其进行了更改,希望这就是您要寻找的。您必须进行一些错误检查(例如,头部和身体的长度必须相同)

//获取所有头部和身体
变量$phead=$('面板头部');
变量$pbody=$(“.panel body”);
//循环创建默认面板并插入头部和身体
对于(int i=0;i<$phead.length;i++)
{
var h=$($phead[i]);
var b=$($pbody[i]);
//创建新div
变量d=$('',类:'面板默认值');
//附加身体和头部
h、 (d)附件;
b、 (d)附件;
//将新div追加到主体
$('body')。追加(d);

}
请注意,
和self
已被弃用以支持,因此此代码将获得.panel head类的div,该类div后面有.panel body div,对吗?我只是怀疑为什么索引设置在函数值上?确实如此。
索引是不必要的,因为它没有被使用。我将删除它。此解决方案效果很好,但另一个调整得更好,但此解决方案更适合处理更大的对象链,谢谢
$(".panel-head").each(function() {
    $(this).next(".panel-body").addBack().wrapAll("<div class='panel panel-default' />")
});