如何在表格中显示文本区域的换行符?

Posted

技术标签:

【中文标题】如何在表格中显示文本区域的换行符?【英文标题】:How to show newlines from textarea in a table? 【发布时间】:2010-12-01 00:45:56 【问题描述】:

在一个表单中,我有一个文本区域,显然输入了文本。输入完成后,内容将提交到服务器并存储在数据库中...

当我显示用户在表格中输入的内容时,换行符不可见。当我检查源代码时,换行符就在那里,但在表格中换行符不起作用......

是否有可能在该表中显示换行符? 我知道,这可能是一个非常愚蠢的问题,但当涉及到 html 和 css 之类的东西时,我并不赞成......

非常感谢任何帮助!

【问题讨论】:

【参考方案1】:

将表格单元格中的 css 设置为

white-space:pre-wrap;

【讨论】:

它可以工作,现在您可以保留/n 而无需将其替换为<br>。谢谢,vsync!附言令人惊叹的主页 - 干得好! 这应该是选择的答案。这么简单的方法! 是的,这是最好的方法 这是最好的答案。就我而言,white-space: pre-line; 效果更好。谢谢【参考方案2】:

\n 不会在 HTML 中呈现为新行。您必须使用<br/> 才能达到此效果。

使用字符串替换将所有 '\n' 字符替换为 '<br/>'

如果您正在使用像 C# 这样的服务器端语言,您可以这样做

private string PutLineBreaks(string strData)

    string strReplaced = string.Empty;

    Regex r = new Regex("/\n/g");

    strReplaced = r.Replace(strData, "<br/>");

    return strReplaced;

【讨论】:

实际上,我宁愿使用一点 javascript sn-p 来完成这项任务!无论如何,谢谢你的信息! \n&lt;pre&gt; 标记内或在具有white-space CSS 设置的各种设置(例如'pre'、'pre-line')的任何块中呈现为换行符,见例如w3schools.com/cs-s-ref/pr_text_white-space.asp【参考方案3】:

您想将所有\n 替换为&lt;br/&gt;

【讨论】:

【参考方案4】:

将表格单元格中的 css 设置为

white-space:pre-line;

即使您的数据有尾随空格,它也会删除并使数据完美。

【讨论】:

【参考方案5】:

使用 &lt;br /&gt; ,或者更确切地说是&lt;p&gt;&lt;/p&gt;,如果我们讨论了一些文本和新段落。 (语义更好的解决方案)。

【讨论】:

我不确定用

替换 \n 实际上在语义上是否正确。 在语义上是一个换行符,\n 也是如此。 \n\n 但是在语义上是一个段落。
您希望以“

”开始整个文本块,并以“

”结束整个文本块。然后,您可以将每个 '\n' 替换为 '

',这将关闭一个段落并开始另一个段落。

以上是关于如何在表格中显示文本区域的换行符?的主要内容,如果未能解决你的问题,请参考以下文章

淘汰文本区域值绑定显示换行符的 ASCII 字符?

无法在 Coach BPM 8.5.7 的输出文本区域中放置换行符

文本区域中的换行符

在发布和重用值后,在文本区域中显示用换行符分隔的值

在联系表单文本区域中获取换行符以显示在电子邮件中

使用 php 读取文件时删除文本区域中的换行符