1

直接変更できない次のコードがあります。

<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(メモメッセージを除く)、新しいラベルにラップする必要がありますdiv:

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

3 に答える 3

2

以下を使用

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

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

于 2011-09-17T18:03:23.230 に答える
2
$('label:first').nextAll().andSelf().not('#memomessage').wrapAll('<div id="registerBox">') 

ここにフィドルがあります

于 2011-09-17T17:59:30.783 に答える
0

特に気にせず#memomessage、ラベルと div のペアを取得したいと仮定すると、次隣接セレクターを使用できます。

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

作業例: http://jsfiddle.net/x6pSZ/

于 2011-09-17T18:01:59.843 に答える