HTML 在 textarea 中显示换行符

Posted

技术标签:

【中文标题】HTML 在 textarea 中显示换行符【英文标题】:HTML Display line breaks within textarea 【发布时间】:2012-11-09 05:10:31 【问题描述】:

这个问题我已经问了好几种方法了,还是没有得到答案。

当您在包含换行符的 textarea 中捕获 asci 文本时,当您按回车时,它似乎会以换行符的形式插入不可见字符。换行符的格式似乎是 \r 用于返回或 \n 用于换行。这些字符在文本中不可见,但在某处。

但是,当我将此代码放入 textarea 时,我无法让它显示换行符。事实上,我找不到任何放置在 textarea 标签之间的代码显示换行符。

有人可以展示一种在文本区域中显示换行符的方法,即。

<textarea>first line <some code> second line </textarea>

我真的尝试了所有你能想象到的东西。例如,如果我尝试 &lt;textarea&gt; first line "\r\n" second line&lt;/textarea&gt; 它只会显示

`firstline "\r\n"` second line

注意:任何涉及&lt;br&gt; 的东西都不会解决这个问题,因为这不是关于 html,而是在 textarea 框中显示的纯文本。

感谢您提供在 textarea 中显示换行符的建议代码。

【问题讨论】:

纯文本是用javascript动态插入textarea还是静态html? 【参考方案1】:

如果您是通过纯 HTML 执行此操作,那么您可以通过以下两种方式之一执行此操作。只需按回车键或使用 ASCII 字符&amp;#013; &amp;#010;添加行

jsFiddle

【讨论】:

好的。这样可行。你知道我会在文本中扫描什么以编程方式插入这些 ascii 字符,即在 php 中,如果我有 $text = $_GET['text']; $test = str_replace("\n"," ",$text); 不是 PHP 抱歉,.NET 使用 System.Environment.NewLine 如果这有助于您走上正确的道路。【参考方案2】:

如果您使用 javascript,您可以使用 textarea 元素 value Property。

var tb = document.getElementById("tb");

var newLine = "\r\n";

var text = "Output: " + newLine + "-------------------" + 
                        newLine + "line 1:	" + 
                        newLine + "line 2:	";

tb.value = text;
//console.log(text);
<textarea id="tb" rows=5>
Output: &#13;&#10;-------------
</textarea>

Run it on JSFiddle

【讨论】:

【参考方案3】:

我不确定能理解你的问题。

如果你想把这个写在你的&lt;textarea/&gt;

first line
second line

你应该这样写:

<html>
    <head>
        <title></title>
    </head>
    <body>
        <textarea rows="4" cols="40">
first line
second line
        </textarea>
    </body>
</html>

在 PHP 中你应该这样写

<html>
    <head>
        <title></title>
    </head>
    <body>
        <textarea rows="4" cols="40"><?php echo "first line\r\nsecond line" ?></textarea>
    </body>
</html>

确保字符串在 " 而不是 '

之间

【讨论】:

我在第二个引号之后尝试了上面的 php 代码(添加 ;),它打印出第一行第二行,没有换行符。我真的试过 echo "first line\r\nsecond line";

以上是关于HTML 在 textarea 中显示换行符的主要内容,如果未能解决你的问题,请参考以下文章

javascript/html/php 捕获 textarea 中的换行符

textarea中的换行符怎样显示在网页中

换行符在 textarea 中显示为 \r\n

IE 问题 - Textarea 始终在一个字符串中显示文本,没有换行符

HTML Textarea 读取换行符

在数据库中存储带有换行符的 TextArea 数据并以相同的格式显示带有换行符