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

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

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

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

非常感谢任何帮助!

【问题讨论】:

    标签: html textarea newline line-breaks tabular


    【解决方案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/cssref/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' 替换为 '

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

        猜你喜欢
        • 2013-03-01
        • 1970-01-01
        • 1970-01-01
        • 2015-11-17
        • 1970-01-01
        • 2016-07-15
        • 2011-09-14
        • 2023-03-14
        相关资源
        最近更新 更多