textarea回车符问题

大家在Java web开发时难免会遇到textarea回车符问题,下面就告诉大家遇到textarea回车符问题时该怎么去解决。

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

在js取textarea的时候:

如果用

var str = document.getElementById("textarea").value;

str = str.replace("\r\n","

");

则只会将第一个\r\n替换成

,如何将所有n个\r\n替换成

呢?难道要无限个replace吗?

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

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

str= str.replace(reg,"\r\n");

这样str中所有的\r\n就替换成

了.然后可以将其存入数据库。

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

了解更多java知识点击文本进行学习java实战开发管理系统icon-default.png?t=M1L8https://www.bilibili.com/video/BV1V341157im/ var reg=new RegExp("

","g");

stt= str.replace(reg,"\r\n");

document.getElementById("textarea").value=str;

更加详细的分析和应用可以参考JavaScript的replace方法与正则表达式结合应用讲解

下面是我写的2个函数 直接放到通用包中 以后使用可以替换

function replaceTextarea1(str){

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

var reg1=new RegExp(" ","g");

str = str.replace(reg,"

");

str = str.replace(reg1,"

");

return str;

}

function replaceTextarea2(str){

var reg=new RegExp("

","g");

var reg1=new RegExp("

","g");

str = str.replace(reg,"\r\n");

str = str.replace(reg1," ");

return str;

}

了解更多java知识点击文本进行学习 java游戏开发大鱼吃小鱼


版权声明:本文为weixin_61111233原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。