?
Solved

htmldecode function in javascript

Posted on 2008-10-03
5
Medium Priority
?
8,896 Views
Last Modified: 2008-10-13
I need an HTMLDecode function in javascript..

I read a data in Javascript as document.getElementById("test").innerHTML;

If i need to remove any html data while reading how do I do that..for e.g. the data may contain   etc

how do parse any data or decode the data. in javascript
0
Comment
Question by:intikhabk
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 2
5 Comments
 
LVL 82

Expert Comment

by:hielo
ID: 22636660
try:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
 "http://www.w3.org/TR/html4/loose.dtd"> 
<html>
<head>
<title></title>
<style type="text/css">
<!--
.x{color:blue;}
-->
</style>
<script type="text/javascript">
function decodeHTML(e){
	var clean = document.getElementById(e).innerHTML.replace(/<[^>]*>/g,"");
	alert( clean );
return clean;
}
</script>
</head>
<body>
<div id="elem1" onclick="decodeHTML(this.id)">
	<span class="x">Hello</span> <strong>world</strong>
</div>
</body>
</html>

Open in new window

0
 

Author Comment

by:intikhabk
ID: 22636836
but if the text is Hello World&nbsp;
it does not work properly...
for eg: if it is
<div id="elem1" onclick="decodeHTML(this.id)">
      Hello World&nbsp;
</div>

the alert returns Hello World&nbsp;
0
 
LVL 82

Expert Comment

by:hielo
ID: 22636916
>>but if the text is Hello World&nbsp
Better yet, what if it is:
Procter & Gamble

have you tried a single ampersand?
0
 

Author Comment

by:intikhabk
ID: 22637010
so how do i remove special characters also
0
 
LVL 82

Accepted Solution

by:
hielo earned 1500 total points
ID: 22637045

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
 "http://www.w3.org/TR/html4/loose.dtd"> 
<html>
<head>
<title></title>
<style type="text/css">
<!--
.x{color:blue;}
-->
</style>
<script type="text/javascript">
//you will need a "replacement table" so that the script below can make the proper
//replacements you wish
var entities=[
			['&amp;','&'],
			['&nbsp;',' ']
		];
function decodeHTML(e){
	var clean = document.getElementById(e).innerHTML.replace(/<[^>]*>/g,"");
	for( var i=0, limit=entities.length; i < limit; ++i)
	{
		clean = clean.replace( new RegExp(entities[i][0],"ig"), entities[i][1]);
	}
	alert( clean );
return clean;
}
</script>
</head>
<body>
<div id="elem1" onclick="decodeHTML(this.id)">
	<span class="x">Hello</span> &nbsp; <strong> & world</strong>
</div>
</body>
</html>

Open in new window

0

Featured Post

Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Having worked on larger scale sites, we found out that you are bound to look at more scalable solutions to integrating widgets, code snippets or complete applications and mesh them into functional sites, in any given composition. To share some of…
Nothing in an HTTP request can be trusted, including HTTP headers and form data.  A form token is a tool that can be used to guard against request forgeries (CSRF).  This article shows an improved approach to form tokens, making it more difficult to…
Learn the basics of strings in Python: declaration, operations, indices, and slicing. Strings are declared with quotations; for example: s = "string": Strings are immutable.: Strings may be concatenated or multiplied using the addition and multiplic…
The viewer will learn how to create and use a small PHP class to apply a watermark to an image. This video shows the viewer the setup for the PHP watermark as well as important coding language. Continue to Part 2 to learn the core code used in creat…
Suggested Courses

801 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question