js获取textarea文本域自动换行符

2019-05-27368次阅读javascript

先更正一下:标题只是一个噱头,其实js根本读取不到textarea里的自动换行符。

<textarea id="textTest" style="width:300px;height:300px;"></textarea>
<span id="Btn">获取内容</span>
<div id="txt"></div>
<script>
    document.getElementById('Btn').addEventListener(click,function(){
        document.getElementById('txt').innerHTML = document.getElementById('textTest').value;
    })
</script>

textarea中增加属性wrap="hard",通过同步提交可以在后台服务器获取到自动换行符

<form method="post" action="http://www.xinran001.com/">
    <textarea name="texta" id="textTest" style="width:600px;height:300px;" wrap="hard"></textarea>
    <input type="submit">
</form>

如果是在textarea里手动去换行,那是可以通过js读取到换行符的。

<textarea id="textTest" style="width:600px;height:300px;"></textarea>
<span id="textBtn">获取换行符</span>
<div id="txt"></div>

<script>
        document.getElementById('textBtn').addEventListener(click,function(){
            document.getElementById('txt').innerHTML = document.getElementById('textTest').value.replace(/\n/g, "<br>").replace(/\r/g, "<br>");
        })
</script>

延伸:CR + LF是什么

  • CR:Carriage Return,对应ASCII中转义字符\r,表示回车
  • LF:Linefeed,对应ASCII中转义字符\n,表示换行
  • CRLF:Carriage Return & Linefeed,\r\n,表示回车并换行

Windows操作系统采用两个字符来进行换行,即CRLF;Unix/Linux/Mac OS X操作系统采用单个字符LF来进行换行;另外,MacIntosh操作系统(即早期的Mac操作系统)采用单个字符CR来进行换行。

上一篇: JavaScript中Truthy(真值)  下一篇: oninput事件在输入法状态下多次触发  

js获取textarea文本域自动换行符相关文章