我在将\n转换为<br />时遇到问题
function format() {
var text = document.getElementById("formatArea").value;
text.replace("\n", "<br/>");
document.getElementById("resultArea").value = text;
}Run Code Online (Sandbox Code Playgroud)
<textarea rows="20" cols="80" id="formatArea">
</textarea>
<textarea rows="20" cols="80" id="resultArea">
</textarea>
<button onclick="format()">Click to create HTML breaks</button>Run Code Online (Sandbox Code Playgroud)
感谢任何帮助,我在JS方面还不是很有经验.
你有2个问题.
首先,replace不更改原始字符串,它返回修改后的字符串.(文档链接:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/replace)
其次,如果你把一个字符串放在replace的第一个参数中,它只会替换第一个出现的.如果要全部替换它们,请使用正则表达式.
所以你应该这样:
function format() {
var text = document.getElementById("formatArea").value;
text = text.replace(/\n/g, "<br/>");
document.getElementById("resultArea").value = text;
}
Run Code Online (Sandbox Code Playgroud)
g正则表达式上的("全局")标志用于匹配所有出现的情况.