多行 textarea 值:并非所有行都存在换行符
Multiline textarea value: line feed not present in all lines
我在文本区域中发现了一个奇怪的错误 (?)...
说,有一个 <textarea>
和 多行 文本(用户粘贴的文本或预设文本无关紧要,两者都经过测试)。
我想从 <textarea>
获取文本并将 \n
替换为其他内容...结果 .replace
仅在第一行有效。
这是代码,明白我的意思:
<textarea id="txt">line1
line2
line3
line4</textarea>
<script>
var strval = document.getElementById("txt").value.replace("\n", "<br>");
// strval returns this:
// line1<br>line2
// line3
// line4
</script>
我用 Chrome 和 Firefox 对此进行了测试。这是一个 jsfiddle https://jsfiddle.net/aapgejvb/
奇怪吧?我是刚刚发现了 WebKit 的一个错误还是我太蠢了?
PS。也用 jQuery 的 .val()
进行了测试,同样的结果(显然)
PPS。已找到 this,帮助不大
.replace("\n", "<br>")
只会替换第一次出现的 \n
(换行符)。
要替换所有你应该使用 replace(/\n/g, "<br />");
我在文本区域中发现了一个奇怪的错误 (?)...
说,有一个 <textarea>
和 多行 文本(用户粘贴的文本或预设文本无关紧要,两者都经过测试)。
我想从 <textarea>
获取文本并将 \n
替换为其他内容...结果 .replace
仅在第一行有效。
这是代码,明白我的意思:
<textarea id="txt">line1
line2
line3
line4</textarea>
<script>
var strval = document.getElementById("txt").value.replace("\n", "<br>");
// strval returns this:
// line1<br>line2
// line3
// line4
</script>
我用 Chrome 和 Firefox 对此进行了测试。这是一个 jsfiddle https://jsfiddle.net/aapgejvb/
奇怪吧?我是刚刚发现了 WebKit 的一个错误还是我太蠢了?
PS。也用 jQuery 的 .val()
进行了测试,同样的结果(显然)
PPS。已找到 this,帮助不大
.replace("\n", "<br>")
只会替换第一次出现的 \n
(换行符)。
要替换所有你应该使用 replace(/\n/g, "<br />");