【问题标题】:How to echo an input of an textarea with line breaks?如何用换行符回显文本区域的输入?
【发布时间】:2011-09-14 17:46:59
【问题描述】:

我正在使用 textarea 向我的数据库发送文本。

数据库截图:

当我从数据库中读取时,它会删除换行符,我怎样才能将它们保留在 $row['opmerkingen'] 中?

【问题讨论】:

标签: php html textarea


【解决方案1】:

显示文本时,使用nl2br() 将换行符转换为<br/> 标记,即使用<?php echo nl2br($row['text']); ?> 代替<?php echo $row['text']; ?>

默认情况下,浏览器将换行符显示为空格,因此必须将它们转换为<br/> 标签。


对于那些觉得这很有用的人 - 请考虑使用 Emil Vikström 建议的 white-space: pre-line。我不再是网络人,很容易无法验证这一点,但 Boaz 在 cmets 中表示,所有现代浏览器都支持它。如果是这样,那应该优先于使用nl2br()

【讨论】:

  • 正是我想要的
【解决方案2】:

nl2br 的替代方法是使用 CSS 属性 white-space

white-space: pre-line;

【讨论】:

【解决方案3】:

我输入如下,但不能使用单引号

echo $row['text'].'\n';

加上双引号。然后工作。

<textarea rows="10" cols="62" style="white-space: pre-line;" wrap="hard">
<?php echo $row['text']."\n"; ?>
</textarea>

当我们获取数据时,它带有 \r\n。也可以在此处使用双引号

【讨论】:

    猜你喜欢
    • 2012-06-12
    • 2013-03-01
    • 2015-04-15
    • 1970-01-01
    • 2021-04-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多