Javascript 使用jQuery用div包装不同的html标记

Javascript 使用jQuery用div包装不同的html标记,javascript,jquery,html,Javascript,Jquery,Html,我在HTML中有以下几行: <header class="title"> <h3>Billing Address</h3> </header> <address> <p>Address</p> </address> 我尝试过.wrap()和.append(),但也不起作用 结果应该是: <div class="new-div"> <header class="t

我在HTML中有以下几行:

<header class="title">
    <h3>Billing Address</h3>
</header>

<address>
 <p>Address</p>
</address>
我尝试过
.wrap()
.append()
,但也不起作用

结果应该是:

<div class="new-div">
    <header class="title">
        <h3>Billing Address</h3>
    </header>

    <address>
     <p> Address </p>
    </address>
</div>

帐单地址
地址

谢谢大家!

使用
.wrapAll()
而不是
.wrap()

wrapAll:围绕匹配元素集中的所有元素包装一个HTML结构

$(“标题,地址”).wrapAll(“”);

您还可以使用
prepend()
append()

$('header')。前置(“”);
$('address').append('MYDIV');

勾选与问题无关的fiddle

,但地址标签不应用于随机地址。根据规范,它只能用于特定页面、章节或文章的联系方式。鉴于您的账单地址标题,“这与此标准不符,因此应使用p。感谢Ian Devlin的评论。正如我所说,我无法访问html:(但我会要求更正:)谢谢您的帮助。衷心感谢我认为wrapAll更好。无论如何,谢谢:)
<div class="new-div">
    <header class="title">
        <h3>Billing Address</h3>
    </header>

    <address>
     <p> Address </p>
    </address>
</div>
$( "header,address" ).wrapAll( "<div class='new' />");
$('header').prepend('<div="new-div">');
$('address').append('MYDIV</div>');