如何用 jQuery 包装一些项目?

发布于 2024-12-04 20:32:04 字数 1080 浏览 0 评论 0原文

我有一段无法直接修改的代码:

<div id="registerMessage"> 
   <div class="pageTitle" style="padding:0px 0px 5px 0px;">
      Register 
   </div> 
   Some bla bla bla
</div>

<input type="hidden" name="ardir" value="" /> 
<input name="action" type="hidden" value="insert" /> 
<label>Email </label>
<div>
   <input  name="user[email]" id="user[email]" type="text" value=""  size="35" class="inputReg" />
</div>

<label>Password (5 chars)</label>
<div>
   <input name="user[passwd]" type="password" value=""  size="35" class="inputReg" />
</div>

<label>Password (confirm)</label>
<div>
   <input name="user[password_confirm]" type="password" value=""  size="35" class="inputReg" />
</div>

<div id="memomessage">
    (Other bla bla bal)
</div>            

我需要将第一个标签到最后一个 div (不包括 memomessage)包装到一个新的 div 中:

<div id="registerBox"> the code of before </div>

I have this code which I can't directly modify:

<div id="registerMessage"> 
   <div class="pageTitle" style="padding:0px 0px 5px 0px;">
      Register 
   </div> 
   Some bla bla bla
</div>

<input type="hidden" name="ardir" value="" /> 
<input name="action" type="hidden" value="insert" /> 
<label>Email </label>
<div>
   <input  name="user[email]" id="user[email]" type="text" value=""  size="35" class="inputReg" />
</div>

<label>Password (5 chars)</label>
<div>
   <input name="user[passwd]" type="password" value=""  size="35" class="inputReg" />
</div>

<label>Password (confirm)</label>
<div>
   <input name="user[password_confirm]" type="password" value=""  size="35" class="inputReg" />
</div>

<div id="memomessage">
    (Other bla bla bal)
</div>            

I need to wrap from the first label to the last div (memomessage excluded) into a new div:

<div id="registerBox"> the code of before </div>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

悸初 2024-12-11 20:32:04
$('label:first').nextAll().andSelf().not('#memomessage').wrapAll('<div id="registerBox">') 

这是一个 小提琴

$('label:first').nextAll().andSelf().not('#memomessage').wrapAll('<div id="registerBox">') 

Here's a fiddle

一笑百媚生 2024-12-11 20:32:04

使用以下

$('label:first').prev().nextUntil('#memomessage').wrapAll('<div id="registerBox"></div>');

http://jsfiddle.net/eeusN/1/

use following

$('label:first').prev().nextUntil('#memomessage').wrapAll('<div id="registerBox"></div>');

http://jsfiddle.net/eeusN/1/

诗酒趁年少 2024-12-11 20:32:04

假设您并不特别关心 #memomessage 并且想要获取标签和 div 对,您可以使用 下一个相邻 选择器:

var newDiv = $('<div />', {id:'registerBox'});
$('label + div').prev().andSelf().wrapAll(newDiv);

工作示例:http://jsfiddle.net/x6pSZ/

Assuming you don't care specifically about #memomessage and want to get label and div pairs, you can use the next-adjacent selector:

var newDiv = $('<div />', {id:'registerBox'});
$('label + div').prev().andSelf().wrapAll(newDiv);

Working example: http://jsfiddle.net/x6pSZ/

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文