2012-03-17 16 views
13

मैं तत्व को कैसे हटा सकता हूं लेकिन सामग्री उस तत्व के अंदर नहीं?तत्व को कैसे निकालें लेकिन इसके अंदर की सामग्री को कैसे हटाया जाए?

<a href="#"> 
    <span> 
     <img src="pic-1.jpg"/> 
    </span> 
</a> 

मैं कोspan कि छवि लपेटता को दूर करना चाहते हैं।

तो मैं प्राप्त कर सकते हैं,

<a href="#"> 

    <img src="pic-1.jpg"/> 

</a> 
+0

संभावित डुप्लिकेट http://stackoverflow.com/questions/4232961/remove-a-html-tag-but-keep-the-innerhtml) – Dzyann

उत्तर

31

आप की जरूरत है unwrap

$('img').unwrap(); 
+0

किस फैब! धन्यवाद! – laukok

+0

ओह, अच्छा काम। वास्तव में खोज करने के बजाय +1 जो मैंने किया था। –

+0

मुझे पता है कि यह क्यू एंड ए पुराना है, लेकिन पाठ को खोलने के बारे में क्या है? तत्व को खोलना संभव है लेकिन सादे पाठ के बारे में कैसे? –

4

jQuery समारोह unwrap() आप जो खोज रहे हैं:

सेट के माता-पिता को निकालें डोम से मेल खाने वाले तत्वों के, मिलान किए गए तत्वों को उनके स्थान पर छोड़कर।

अधिक जानकारी के लिए the API doc page देखें।

+0

यह बहुत अच्छा धन्यवाद है! :-) – laukok

1

आप अपने HTML वास्तुकला संशोधित करने के लिए एक सा यहाँ होगा:

<a href="#" id="my_href"> 
    <span id="my_span"> 
     <img src="pic-1.jpg"/> 
    </span> 
</a> 

jQuery समाधान:

$("#my_href").html($("#my_span").html()); 

गैर jQuery समाधान:

document.getElementById("my_href").innerHTML = document.getElementById("my_span").innerHTML; 
+3

इस तरह के HTML का उपयोग करना आम तौर पर एक बुरा अभ्यास है। आप को रखने के लिए बस स्थानांतरित करने और हटाने के लिए हटाने के बजाय नोड्स को नष्ट कर रहे हैं और पुनर्निर्माण कर रहे हैं। यह 'img' तत्व से जुड़े किसी भी हैंडलर या अन्य डेटा को भी नष्ट कर देगा। –

+2

आह, वास्तव में? ठीक है, मैं भविष्य में उस समय से बचूंगा। :) –

+0

यह ** नहीं ** jQuery समाधान है! – gdoron

7
$(document).ready(function(){ 
    $span = $('span'); 
    $span.replaceWith($span.html()); 
}); 
,210

उदाहरण देख http://jsfiddle.net/vikastyagi87/Xaa39/6/

[innerHTML एक एचटीएमएल टैग निकालें लेकिन रख] (की
+0

मुझे लगता है कि यह सबसे पूरा उत्तर है क्योंकि यह अनचाहे पाठ के लिए भी काम करता है (न केवल डीओएम तत्व) – viery365

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