我正在创建一个项目,我需要使用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
提前谢谢。
答案 0 :(得分:1)
答案在评论中。
字符串可能已转义,因此字符串不是“\ n”,而是“\ n”。最简单(也是最丑陋)的解决方案是:
document.getElementById('myTextArea').value=result.slice.replace(/\\n/g, "\n");
我建议做这个服务器端
$result = str_replace('\\n', '\n', $stringfromdb);