2013-01-15 18 views
29

संभव डुप्लिकेट:
JavaScript/jQuery HTML Encodingआप जावास्क्रिप्ट का उपयोग कर एचटीएमएल एन्कोड कैसे करते हैं?

मैं html टैग एन्कोड करने की जरूरत है।

<b>test</b> 

मैं करने के लिए इसे सांकेतिक शब्दों में बदलना करने की जरूरत है:

&lt;b&gt;test&lt;/b&gt; 

मैं भागने का उपयोग कर रहा है, लेकिन यह काम नहीं करता।

document.write(escape("<b>test</b>")); 

परिणाम मुझे मिल गया

%3Cb%3Etest%3C/b%3E 

इस मैं क्या उम्मीद नहीं है। क्या जावास्क्रिप्ट का उपयोग करके एचटीएमएल एन्कोड करने का कोई और तरीका है?

+1

तुम हमेशा अगर कोई पहले से = पहले इस पर पोस्ट किया गया है को देखने के लिए) – afreeland

+8

@Chase की जाँच करनी चाहिए, इस डुप्लिकेट नहीं के सवाल पर सभी है, ** उस प्रश्न का सभी उत्तर jQuery और jQuery का उपयोग कर रहे केवल * *, यहां jQuery उपयोग में नहीं हो सकता है। – gdoron

+2

@gdoron - इस तथ्य से फेंक न दें कि लिंक में नाम 'jQuery' है। वास्तव में, @ एंट्रोप्रिक पृष्ठ के निचले हिस्से में पूरी तरह से प्रश्न का उत्तर देता है। – Chase

उत्तर

38

posted previously रूप से @CMS

function htmlEncode(value){ 
    //create a in-memory div, set it's inner text(which jQuery automatically encodes) 
    //then grab the encoded contents back out. The div never exists on the page. 
    return $('<div/>').text(value).html(); 
} 

function htmlDecode(value){ 
    return $('<div/>').html(value).text(); 
} 

htmlEncode('<b>test</b>') 
// result"&lt;b&gt;test&lt;/b&gt;" 

यह ठीक काम करने के लिए लग रहा था ... जब तक आप jQuery के बिना एक संस्करण चाहते हैं। उस स्थिति में जुड़े धागे को अन्य तरीकों से मदद करनी चाहिए।

+3

बस टिप्पणियों में लिंक से पेस्ट कॉपी करें। – jholloman

+65

-1, jQuery जावास्क्रिप्ट के समान नहीं है। – ceejayoz

+1

lol @jholloman जब मैंने पोस्ट किया तो मैंने एक समान पोस्ट और एक ही पोस्ट को जोड़ने वाली एक टिप्पणी देखी जो मैंने लिंक की थी। हम सभी ने एक ही समय में इसे मारा .. मुझे लगता है कि हम सभी इस के शीर्ष पर हैं =) – afreeland

3
var html = "<b>test</b>"; 
var result = html.replace(/</g,"&lt;").replace(/>/g,"&gt;"); 
+7

'0'32 से &' .. – GKFX

+1

डॉन के बारे में क्या है document.write का उपयोग न करें। http://stackoverflow.com/questions/802854/why-is-document-write-considered-a-bad-practice – davidgoli

+2

@ डेविडगोली मैं एक जेएस शुरुआती नहीं हूं और मुझे ' document.write' समस्याओं और मैं आमतौर पर इसका उपयोग नहीं करता हूं। हालांकि, मैं इसे सिर्फ प्रदर्शन उद्देश्यों के लिए उपयोग कर रहा हूं, क्योंकि मुझे उम्मीद नहीं है कि ओपी सिर्फ कोड कॉपी और पेस्ट करे।इसलिए, यदि यह मकसद है कि आपने मेरा जवाब घटा दिया है, तो कृपया –

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