2011-07-10 16 views
8

मेरे पास एंकर टैग (<a>) का एक गुच्छा है जिसे मुझे <span> टैग में कनवर्ट करने की आवश्यकता है। मुझे क्लिक अक्षम करने के लिए ऐसा करने की आवश्यकता नहीं है (मुझे preventDefault() के बारे में पता है और क्लिक ईवेंट हैंडलर से false लौटा रहा है)। मुझे ड्रैग और ड्रॉप सॉर्टिंग सक्षम करने के लिए बस ऐसा करने की आवश्यकता है (जो आईई एक एंकर टैग पर रोकता है लेकिन एक अवधि पर अनुमति देता है)।एंकर (लिंक) टैग को अक्षम करने के लिए कैसे करें (स्पैन में कनवर्ट करें)

मेरे पास एक कामकाजी समाधान है जो ठीक है।

http://jsfiddle.net/5HGbx/

मैं सिर्फ अगर तुम जादूगरों में से किसी एक ही अंतिम परिणाम प्राप्त करने के एक बरसाती कोट तरीका है सोच रहा हूँ।

उत्तर

29

आप jQuery एपीआई से replaceWith इस्तेमाल कर सकते हैं

$('#myButton').click(function(){ 
    $("#someDiv a").replaceWith(function(){ 
     return $("<span>" + $(this).html() + "</span>"); 
    }); 
}); 
यहाँ

फिडल: http://jsfiddle.net/naveen/ufYCt/1/

6
1
नवीन के से

का जवाब आप href टैग

खो देंगे यदि आप इस प्रकार href टैग भी सिर्फ इस संशोधित चाहते हैं ...

$('#myButton').click(function(){ 
    $("#someDiv a").replaceWith(function(){ 
     return $("<span href=\""+$(this).attr('href')+"\">" + $(this).html() + "</span>"); 
    }); 
}); 
+0

दोस्त यह अवैध मार्कअप उत्पन्न करता है। स्पैन में कोई href टैग नहीं है – naveen

+0

'डेटा-href' विशेषता नाम के लिए बेहतर विकल्प होगा, जो वैध HTML5 भी होगा। –

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