2012-02-04 6 views
5

असली बेवकूफ सवाल के लिए खेद है। लेकिन यह किसी भी तरह से काम नहीं करता है।तत्व से HTML() को अन्य तत्व को छोड़कर कैसे प्राप्त करें?

<html> 
<head> 
<script src='js/jquery.js' type='text/javascript'></script> 
<script type='text/javascript'> 
    $(document).ready(function() { 
    var htmlcontent = $('.content').not('.dontgrab').html(); 
    alert(htmlcontent); // returns EVERYTHING 
    }); 
</script> 
</head> 
<body> 
<div class='content'> 
    BEFORE 
    <div class='dontgrab'>DON'T GRAB</div> 
    AFTER 
</div> 
</body> 
</html> 

$ ("सामग्री *: नहीं ('डोंटग्रैब')" कोशिश की गई। Html(); // रिटर्न न्यूल

कृपया मदद करें।

धन्यवाद।

+0

@ डेविड रोड्रिग्स: नोप में मदद करता है। पहले ही कोशिश कर ली है। –

+0

धन्यवाद दोस्तों। मुझे लगता है कि इसे निकालने के लिए बहुत आसान होगा() तत्व और फिर इसे फिर से बनाएं। –

उत्तर

10

यह करना चाहिए:

var clone = $('div.content').clone(); 
clone.find('.dontgrab').remove(); 

var html = clone.html(); 
+0

क्या यह दस्तावेज़ से हटाए गए तत्व को हटा देगा? मुझे इसे रखने की ज़रूरत है! –

+0

आप इसे क्लोन कर देंगे (अस्थायी रूप से), आप केवल क्लोन से हटा देंगे, दस्तावेज़ से नहीं। –

+0

कोई अन्य तरीका? थोड़ा अतिरिक्त कोडिंग लगता है। =) –

-1

मुझे लगता है कि आप क्या करने की कोशिश कर रहे हैं:

var htmlcontent = $('.content').remove(".dontgrab").html(); 

आप .not इस्तेमाल कर सकते हैं() करता है, तो स्थिति की तरह था:

var htmlcontent = $('div').not(".dontgrab").html(); 

<body> 
<div class="content"> 
    BEFORE 

    AFTER 
</div> 
<div class="content dontgrab">DON'T GRAB</div> 
</body> 

मुझे नहीं लगता कि आप उपयोग कर सकते हैं। चयनित तत्व बच्चों के लिए नहीं। मुझे उम्मीद है कि यह

संबंधित मुद्दे