炫意html5
最早CSS3和HTML5移动技术网站之一

js对textarea换行符的处理方案

前言

本文很简单,就是记录一下js对textarea换行符的处理。

调试

随便写一个textarea

<textarea name="" cols="30" rows="10"></textarea>

整个调试如下图:

enter image description here

发现:
textareaid里面的换行符可以通过indexOf获取

textareaid.value.indexOf("\n")

但是直接通过正则全局替换没有效果(如上图)

textareaid.value.replace('/\n/g',';')

纠正

textareaid.value.replace(/\n/g,';')

上面多加了一对单引号。运行上面也是可以全局替换的:

textareaid.value.replace(/\n/g,';')
"炫H5换行符测试;炫H5换行符测试1;炫H5换行符测试2;炫H5换行符测试3;"

单个替换可以替换一个,因为没有全局替换:

textareaid.value.replace('\n',';')
"炫H5换行符测试;炫H5换行符测试1
炫H5换行符测试2
炫H5换行符测试3"
textareaid.value.replace('\n','<br/>')
"炫H5换行符测试<br/>炫H5换行符测试1
炫H5换行符测试2
炫H5换行符测试3"

enter image description here

全局替换方案

如上图运行,全局替换一般用如下代码:

textareaid.value.split("\n").join(";")

先分割成数组,然后再用你要替换的符号链接。

或者上面的正则

textareaid.value.replace(/\n/g,';')

小结

文章很短,发现很多网上的写法不是很对。把自己的调试过程,记录一下,分享给大家!

纠正
好丢人,之前随便调试的时候,正则加了引号,导致全局替换失败。现在发现,textarea 里面的回车就是”\n”,可以用你想要的方式进行替换!

炫意HTML5 » js对textarea换行符的处理方案

Java基础教程Android基础教程