Tutorial :Javascript / jQuery - convert special html characters


I have a pre element with some html code in it. the code has special characters in it, like <, so it doesn't break the page.

Then I have a javascript function that gets the contents of this pre element, highlights it (with codemirror), and replaces the element contents with the highlighted text.

I'm using $("pre").append(...); to do this. The problem is that after the highlighting, on the screen I see &lt; instead of <. How can I convert these characters back to html?


You should be using the .text() method to grab the code from the pre. This way you are't giving the encoded symbols to the code highlighter.


I don't know what happens (and why it happens) to your html, but you can use jQuerys .text() and .html() to decode/encode html entitiys like:


<div id="test">&lt;&lt;</div>  


var t = $('#test');  t.html(t.text()); // will print "<<"  

example: http://www.jsfiddle.net/fphw3


Since you mentioned that you use .html() to read the value of your element, a call to .text() instead should solve your issue.

Note:If u also have question or solution just comment us below or mail us on toontricks1994@gmail.com
Next Post »