2011-05-10 19 views
5

का अंतिम भाग जोड़ें, मैं निम्नलिखित मूल्यों और पाठ को एक साथ डीआईवी में लपेटने की कोशिश कर रहा हूं।jQuery div का पहला भाग जोड़ें, फिर div seperatley

<table cellspacing="0" cellpadding="0" border="0" class="thePrices"> 
    <tbody><tr> 
     <td> 
      <font class="text colors_text"> 
      <b>MSRP: <span class="priceis">$90.00</span></b> 
      </font><br> 
      <b><font class="pricecolor colors_productprice"> 
       <font class="text colors_text"><b>Burkett Price:</b></font> 
       <span class="priceis">$289<sup>.99</sup></span> 
      </font> 
      </b><br> 
      <a href="a link">A link goes here</a> 
      <table>A TABLE WITH STUFF GOES HERE</table> 
     </td> 
     </tr></tbody> 
</table> 

यह है कि मैं क्या करने की कोशिश कर रहा हूँ:

यह है कि मैं क्या है

<table cellspacing="0" cellpadding="0" border="0" class="thePrices"> 
     <tbody><tr> 
      <td> 
      **<div class="pricebox">** 
       <font class="text colors_text"> 
        <b>MSRP: <span class="priceis">$90.00</span></b> 
       </font><br> 
       <b><font class="pricecolor colors_productprice"> 
        <font class="text colors_text"><b>Burkett Price:</b></font> 
        <span class="priceis">$289<sup>.99</sup></span> 
        </font> 
       </b><br> 
      **</div>** 
       <a href="a link">A link goes here</a> 
       <table>A TABLE WITH STUFF GOES HERE</table> 
      </td> 
      </tr></tbody> 
    </table> 

यह काम नहीं करता है, लेकिन आप मैं गलत क्या कर रहा करने के विचार मिलता है:

$(document).ready(function() { 
$('.thePrices').find('td').find('font:first').before('<div class="pricebox">'); 
$('.thePrices').find('.colors_productprice').find('b').after('</div>'); 
}); 

शायद मुझे SLICE का उपयोग करना चाहिए?

+0

को बदलना चाहते हैं तो क्या आप कृपया आउटपुट को कैसा दिखाना चाहते हैं, इसके बारे में और बता सकते हैं? – Dhiraj

+0

निश्चित रूप से, मैं सिर्फ प्रथम फ़ॉन्ट टैग और बी टैग को div..in में कक्षा 'pricebox' के साथ एक साथ लपेटना चाहता हूं। – ToddN

उत्तर

5

मुझे लगता है कि क्या आप चाहते हैं .wrapAll()
अपडेट किया गया, .andSelf() उपयोग करने के लिए शामिल करने के लिए <font/>

$('.thePrices').find('td').children().first().nextUntil('a').andSelf().wrapAll('<div class="pricebox"></div>'); 

Example on jsfiddle

+0

अच्छी टिप, मुझे 'अगली मंजिल' के बारे में पता नहीं था इसलिए मुझे नहीं लगता था कि इसके लिए 'रैप' का उपयोग किया जा सकता है। –

+0

यह अब उत्पाद मूल्य भाग को लपेटता है जिसमें एमएसआरपी हिस्सा नहीं है। – ToddN

+0

@ मार्क यह मेरे लिए सही तरीके से काम नहीं करता है। मुझे इसे पहले फ़ॉन्ट टैग को लपेटने की ज़रूरत है और यह सिर्फ टीडी के तहत पहले बी टैग को लपेट रहा है? – ToddN

0
$('.thePrices>tbody>tr>td').children().slice(0,3).wrapAll('<div class="pricebox"></div>'); 

का उपयोग करता है slice() लपेटकर से पहले पहले 3 बच्चों काट करने के लिए है उन्हें,नोट करेंएक बच्चा है यदि आप a से पहले 3 से 4