HTML在textarea中显示换行符

use*_*310 23 html textarea line-breaks

我现在已经用几种方式问过这个问题,但还是没有得到答案.

当你在包含换行符的textarea中捕获asci文本时,它似乎在你点击返回时以换行符的形式插入不可见的字符.换行符似乎具有返回格式\ r \n或\n换行符.这些字符在文本中不可见,但在某处.

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

有人可以显示在textarea中显示换行符的方法,即.

<textarea>first line <some code> second line </textarea>
Run Code Online (Sandbox Code Playgroud)

我真的尝试过你可能想象到的一切.例如,如果我尝试<textarea> first line "\r\n" second line</textarea>它只是显示

`firstline "\r\n"` second line
Run Code Online (Sandbox Code Playgroud)

注意:任何涉及<br>都不会解决这个问题,因为这不是关于html,而是显示在textarea框中的纯文本.

感谢建议的代码在textarea中显示换行符.

小智 23

好吧,如果您通过纯HTML执行此操作,那么您可以通过两种方式之一完成此操作.只需按Enter键或使用ASCII字符即可添加行&#013; &#010;

的jsfiddle


sto*_*ech 5

如果您使用的是javascript,则可以使用 textarea 元素值 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);
Run Code Online (Sandbox Code Playgroud)
<textarea id="tb" rows=5>
Output: &#13;&#10;-------------
</textarea>
Run Code Online (Sandbox Code Playgroud)

在 JSFiddle 上运行它


Cod*_*rce -3

我不确定是否理解你的问题。

如果你想把这个写在你的<textarea/>

first line
second line
Run Code Online (Sandbox Code Playgroud)

你应该这样写:

<html>
    <head>
        <title></title>
    </head>
    <body>
        <textarea rows="4" cols="40">
first line
second line
        </textarea>
    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

在 PHP 中你应该这样写

<html>
    <head>
        <title></title>
    </head>
    <body>
        <textarea rows="4" cols="40"><?php echo "first line\r\nsecond line" ?></textarea>
    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

确保字符串位于 " 和非 ' 之间