日期:2014-05-16  浏览次数:20469 次

js 获取 textarea 中的 “真实内容”
数据库中存的数据为:
<P>abc</P>&lt;script language=javascript&gt;<BR>alert('abc');<BR>&lt;/script&gt;

将上面数据读取到textarea时却变成:
<P>abc</P><script language=javascript><BR>alert('abc');<BR></script>

在网页中查看原代码内容如下(即跟数据库是一致的):
<textarea id="Content" name="Content" rows="8" cols="60"><P>abc</P>&lt;script language=javascript&gt;<BR>alert('abc');<BR>&lt;/script&gt;</textarea>

分别用
alert(Content.value)
alert(Content.innerTEXT)
出来的结果同上面例2,即浏览器自动转后结果。
alert(Content.innerHTML)
侧全部将尖括号转换为 &lt; 和 &gt; 了包括那个<P>了。

现在我想从textarea中得到真实的内容,或者让textarea显示出真正的数据库内容,即数据库中的内容,也就是通过网页源代码中看到的内容。
怎么做?

做在线编辑器时用。

------解决方案--------------------
输出前再转一次,先把&转成&amp;,然后把<替换成&lt;,把>转成&gt;,第一步不要和后两步颠倒顺序
------解决方案--------------------
主要是转码,楼主其余的就直接取值就可以了
------解决方案--------------------
写个转码函数吧