HTML在textarea中显示换行符

时间:2012-11-21 01:23:14

标签: html textarea line-breaks

我现在已经通过几种方式提出这个问题,但仍然没有得到答案。

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

然而,当我把这段代码放在textarea中时,我无法让它显示一个换行符。事实上,我找不到任何放在textarea标签之间的代码显示换行符。

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

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

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

`firstline "\r\n"` second line

注意:涉及<br>的任何内容都无法解决此问题,因为这不是关于html,而是显示在textarea框中的纯文本。

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

3 个答案:

答案 0 :(得分:23)

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

即可添加行

jsFiddle

答案 1 :(得分:0)

如果您使用 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

答案 2 :(得分:-2)

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

如果您想在<textarea/>

中写下此内容
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>

确保字符串位于“而不是

之间