2010-11-09 54 views
0

我有一个文本框,我在数据库中有类似于®的值,它等于®.I获取数据并将其写入文本框,但它将数据原样写入。代码部分是这样从html代码转换为实际值的javascript

var data=database_values;//here there is data like this "DOLBY®" 
document.getElementById(id).value = data; 

我想使文本框的值DOLBY®DOLBY®

+0

据我了解你的数据库值& #174;和文本框显示& #174;,而不是(R );.你使用什么数据库?他们大多数可以使用特殊字符集和存储(R);. – HamoriZ 2010-11-09 07:55:48

+0

@Zoltan Hamori,大多数数据库'可以'存储特殊字符并不意味着我们必须这样做。有存储转义值的原因。 – Nivas 2010-11-09 08:01:34

+0

我使用mysql数据库 – 2010-11-09 08:09:59

回答

0

嗨,我发现了一种反转义HTML code.Here是功能

function unescapeHTML(html) { 
var tempHtmlNode = document.createElement("tempDiv"); 
tempHtmlNode.innerHTML = html; 
if(tempHtmlNode.innerText) 
return tempHtmlNode.innerText; // IE 
return tempHtmlNode.textContent; // FF 

} 

感谢您的帮助反正

0

如果你正在然后®为®unescape它。

document.getElementById(id).value = unescape(data);

+0

我怎么能做到这一点杜比?我不想omnescape omly ®,我想申请它为杜比® – 2010-11-09 08:06:10

+0

我使用unescape('®');但它没有工作 – 2010-11-09 08:16:06

0

假设你正在使用服务器端语言(即PHP)也有功能这一点。

例如这将与PHP的工作:

html_entity_decode($data); 

如果你在使用JavaScript设置,还是有办法。 see the code here

+0

谢谢,我解决了问题 – 2010-11-09 09:51:26

+0

感谢您的帮助,我解决了上述问题和代码 – 2010-11-11 08:54:27