js中replace删除textarea里回车符

js中replace删除textarea里回车符

http://www.sina.com.cn  2008年07月22日 16:04  《程序员》

来源:http://www.blogjava.net/xtitan/archive/2008/07/22/216518.html

  在textarea中输入回车符 在js读取textarea中的值有\r\n然后到业务层转换到string中就有可能变成空格形式然后被存入数据库,当在取出此值的时候则会变成空格的形式,因此我们需要将不显示的\r\n替换一下。

  在js取textarea的时候:

  如果用

var str = document.getElementById("textarea").value;
str = str.replace("\r\n","<br>");

  则只会将第一个\r\n替换成<br>,如何将所有n个\r\n替换成<br>呢?难道要无限个replace吗?

  其实不用,replace可以和正则表达式结合,一次替换所有的\r\n。

var reg=new RegExp("\r\n","g");
str= str.replace(reg,"<br>");

  这样str中所有的\r\n就替换成<br>了.然后可以将其存入数据库。

  在取出的时候 只用将值在替换回来即可

var reg=new RegExp("<br>","g");
stt= str.replace(reg,"\r\n");
document.getElementById("textarea").value=str;

如果是删除,则:

var reg=new RegExp("\r\n","g");
str= str.replace(reg,"");

原文地址:https://www.cnblogs.com/nianshi/p/1545273.html