Textarea显示\ n字符而不是正确显示endline

时间:2013-06-23 16:26:16

标签: javascript textarea

我正在创建一个项目,我需要使用mysql数据库中的信息更新textarea字段。

如果我手动输入javascript:

document.getElementById('myTextArea').value='Line1\nLine2';

文本框正确显示。

在我的脚本中,我在某个时候使用从ajax请求收到的字符串更新值:

document.getElementById('myTextArea').value=result.slice(18);
console.log(result.slice(18));

在这种情况下,文本区域显示如下文本:

  

这应该是第一行。\ n这应该是第二行。\ n。等等......

在控制台日志中,我得到了正确的文字:

  

这应该是第一行。\ n这应该是第二行。\ n。等等......

但我希望它在文本框中显示结束。

下面是一张包含sql表,控制台输出和textarea显示文本的方式的图片:

http://s22.postimg.org/npzonvm9d/textarea.png

提前谢谢。

1 个答案:

答案 0 :(得分:1)

答案在评论中。

字符串可能已转义,因此字符串不是“\ n”,而是“\ n”。最简单(也是最丑陋)的解决方案是:

document.getElementById('myTextArea').value=result.slice.replace(/\\n/g, "\n");

我建议做这个服务器端

$result = str_replace('\\n', '\n', $stringfromdb);