我想在文本区添加换行符。我尝试了\n和<br/>标签,但不工作。你可以看到上面的HTML代码。你能帮我在文本区插入换行符吗?

<textarea cols='60' rows='8'>This is my statement one.\n This is my statement2</textarea>

<textarea cols='60' rows='8'>This is my statement one.<br/> This is my statement2</textarea>

当前回答

使用CSS在Textarea中输入关键字行:

white-space: pre-wrap;

其他回答

经过大量的测试,下面的代码在typescript中为我工作

 export function ReplaceNewline(input: string) {
    var newline = String.fromCharCode(13, 10);
    return ReplaceAll(input, "<br>", newline.toString());
}
export function ReplaceAll(str, find, replace) {
    return str.replace(new RegExp(find, 'g'), replace);
}

T.innerText = "Position of LF: " + t.value.indexOf("\n");

p3.innerText = t.value.replace("\n", "");

<textarea id="t">Line 1&#10;Line 2</textarea>

<p id='p3'></p>

使用CSS在Textarea中输入关键字行:

white-space: pre-wrap;

我认为你混淆了不同语言的语法。

& # 10;是HTML字符串中的换行字符文字(HtmlEncoded值为ASCII 10或)。但是换行字符在HTML中不会显示为换行符(见底部注释)。 \n是Javascript字符串中的换行字符文字(ASCII 10)。 <br/>是HTML中的换行符。许多其他元素,如<p>, <div>等也呈现换行符,除非被某些样式覆盖。

希望下面的插图能让你更清楚:

T.innerText = "Position of LF: " + t.value.indexOf("\n"); p1。innerHTML = t.value; p2。innerHTML = t.value。取代(“\ n”、“< br / >”); p3。innerText = t.value。取代(“\ n”、“< br / >”); </textarea> . <textarea id="t">第一行&#10 < p id = ' T ' > < / p > < p id =“p1”> < / p > < p id =“p2”> < / p > < p id =“p3”> < / p >

关于Html有几点需要注意:

TEXTAREA元素的innerHTML值不呈现Html。请尝试以下方法:<textarea>A < A href='x'>link</ A >。</textarea>查看。 P元素将所有连续的空格(包括新行)呈现为一个空格。 LF字符不会呈现为HTML中的新行或换行符。 TEXTAREA将LF渲染为文本区域框中的新行。

只需使用<br> 例:

<textarea>
blablablabla <br> kakakakakak <br> fafafafafaf 
</textarea>

论点: blablablabla是fafafaf的哥哥