JavaScript/jQuery/JSON: Decoding entities in form values

The problem with my code is that entities are being displayed in my form as entities, not has characters.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<style type="text/css">
textarea,input {width: 500px;display: block;};
</style>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script type="text/javascript">
 $(document).ready(function () {
  data = {
	"field1": [{
		"default": "&#84;his is an &ldquo;example&rdquo; on how special characters may be used &amp; seen."
	}],
	"field2": [{
		"default": "&#84;his is an &ldquo;example&rdquo; on how special characters may be used &amp; seen."
	}],
  }

  $.each(data, function(key, val) {
	$('#'+key).val(val[0]['default']);
  });

});
</script>
<title>Test</title>
</head>
<body>

<input id="field1" name="field1" type="text" />
<textarea cols="10" rows="10" id="field2" name="field2"></textarea> 

</body>
</html>

Open in new window

LVL 16
hankknightAsked:
Who is Participating?
 
leakim971PluritechnicianCommented:
You may use : $('#'+key).val($("<div />").html(val[0]['default']).text());

Test page : http://jsfiddle.net/6Fdv2/1/

$(document).ready(function () {
  data = {
    "field1": [{
        "default": "&#84;his is an &ldquo;example&rdquo; on how special characters may be used &amp; seen."
    }],
    "field2": [{
        "default": "&#84;his is an &ldquo;example&rdquo; on how special characters may be used &amp; seen."
    }],
  }

  $.each(data, function(key, val) {
    $('#'+key).val($("<div />").html(val[0]['default']).text());
  });

});

Open in new window

0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.