161
rated 0 times
[
165]
[
4]
/ answers: 1 / hits: 17867
/ 14 Years ago, tue, may 11, 2010, 12:00:00
Sample conversions:
& -> `&`
> -> `>`
Any small library function that can handle this?
More From » html
& -> `&`
> -> `>`
Any small library function that can handle this?
I have on my utility belt this tiny function always:
function htmlDecode(input){
var e = document.createElement('div');
e.innerHTML = input;
return e.childNodes[0].nodeValue;
}
htmlDecode(&); // &
htmlDecode(>); // >
It will work for all HTML Entities.
Edit: Since you aren't in a DOM environment, I think you will have to do it by the hard way:
function htmlDecode (input) {
return input.replace(/&/g, &)
.replace(/</g, <)
.replace(/>/g, >);
//...
}
If you don't like the chained replacements, you could build an object to store your entities, e.g.:
function htmlDecode (input) {
var entities= {
&: &,
<: <,
>: >
//....
};
for (var prop in entities) {
if (entities.hasOwnProperty(prop)) {
input = input.replace(new RegExp(prop, g), entities[prop]);
}
}
return input;
}