我想在文本区添加换行符。我尝试了\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>
我想在文本区添加换行符。我尝试了\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>
当前回答
要在文本区域内获得一个新行,在那里放一个实际的换行符:
<textarea cols='60' rows='8'> 这是我的statement2</textarea>
其他回答
试试这个。工作原理:
<textarea id="test" cols='60' rows='8'>This is my statement one. This is my statement2</textarea>
替换<br>标签:
$("textarea#test").val(replace($("textarea#test").val(), "<br>", " ")));
要在文本区域内获得一个新行,在那里放一个实际的换行符:
<textarea cols='60' rows='8'> 这是我的statement2</textarea>
我发现String.fromCharCode(13,10)在使用视图引擎时很有帮助。 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/fromCharCode
这将创建一个包含实际换行符的字符串,从而迫使视图引擎输出换行符而不是转义版本。使用NodeJS的EJS视图引擎-这是一个简单的例子,其中任何\n应该被替换:
viewHelper.js
exports.replaceNewline = function(input) {
var newline = String.fromCharCode(13, 10);
return input.replaceAll('\\n', newline);
}
EJS
<textarea><%- viewHelper.replaceNewline("Blah\nblah\nblah") %></textarea>
呈现
<textarea>Blah
blah
blah</textarea>
replaceAll:
String.prototype.replaceAll = function (find, replace) {
var result = this;
do {
var split = result.split(find);
result = split.join(replace);
} while (split.length > 1);
return result;
};
你还应该检查元素的css空白属性(mdn docs),确保它被设置为一个不抑制换行的值,例如:
white-space: pre-line;
你会对这3个值感兴趣:
精准医疗 保留了空白的序列。线路只有在 源和<br>元素中的换行符。 pre-wrap 保留了空白的序列。线路断在 换行符,在<br>处,以及必要时填充行框。 行前空白序列被折叠。线路断在 换行符,在<br>处,以及必要时填充行框。
T.innerText = "Position of LF: " + t.value.indexOf("\n");
p3.innerText = t.value.replace("\n", "");
<textarea id="t">Line 1 Line 2</textarea>
<p id='p3'></p>