Textareas连续不再显示一条新线

时间:2012-12-12 13:09:39

标签: php html mysql

我有一个将blob文本插入数据库的表单。

当我使用textarea将其插入数据库时​​,它工作正常。

例如,如果我将此文本放入textarea字段:

test


ss
f



f
f




dsdfdsf


sdfsdfsdf

将其保存到数据库中:

test


ss
f



f
f




dsdfdsf


sdfsdfsdf

那很好,现在当我从数据库中获取数据并将其回显到div时,我使用nl2br(),并且divs内容变为:

test


ss
f



f
f




dsdfdsf


sdfsdfsdf

所以那还不错

无论其

如果我将数据库的输出回显到textarea,它就变成:

test
ss
f
f
f
dsdfdsf
sdfsdfsdf

那不是使用nl2br,如果我使用nl2br,textarea会变成:

test<br /><br /><br />ss<br />f<br /><br /><br /><br />f<br />f<br /><br /><br /><br /><br />dsdfdsf<br /><br /><br />sdfsdfsdf

我想要换行,而不是(br /),你可以看到它知道应该有多少行,但是当我不使用nl2br时,它最多只能连续执行1行。

我试过谷歌搜索,我所能找到的是人们问如何将数据库内容回显到div,但对我来说,它适用于div(使用nl2br),它只是一个textarea ... < / p>

我也尝试过给textarea css属性:&#39; white-space:pre;&#39;,但这也不起作用。

1 个答案:

答案 0 :(得分:1)

如果要将数据输出到textarea,则无法使用nl2br。只输出数据(使用htmlspecialchars)。

textarea会看到\ n(换行符),因为div会看到<br />

http://jsbin.com/uzinut/1