前后台传换行符的问题

前后台传换行符的问题



今天遇到一个看似很简单,又有点棘手的问题。

前台传到后台的数据有换行符,后台接收,如果不做处理直接返回到页面,用jsp接收${desc}是没有问题的。但是,如果在js中引用,控制台就会报出unterminated string literal的错误。遇到这种情况有两种方式可以处理:

1)保存数据前先处理,用其他字符串代替\n或者\r\n,后台保存后,如果前台有需要再返回时,可以再替换成\n或者\r\n(没做验证,应该没问题)。不推荐,略繁琐,容易有陷阱。

2)按原有格式保存到数据库中,当前台用到时,可在返回前台之前做一个特殊处理,在前台页面再转换成换行符,已验证,可行。

需要注意的是,在火狐浏览器下,换行符为\r\n,在谷歌浏览器下,换行符为\n

后台:

public String filterLineBreak(String desc){

if(desc!=null&&desc.indexOf("\n")!=-1){

if(desc.indexOf("\r\n")!=-1){

desc = desc.replace("\r\n","");

}else{

desc = desc.replace("\n","<br/>");

}

}

return desc;

}

前台:

var desc = '{desc}'.trim();

if(desc.indexOf("<br/>")){

desc = desc.replace(//g,"\n");

}

if(desc.indexOf("<brbr/>")){

desc = desc.replace(//g,"\r\n");

}

最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • "use strict";function _classCallCheck(e,t){if(!(e instanc...
    久些阅读 2,238评论 0赞 2
  • 六月的雨, 悠悠扬扬的洒下, 浸润我越发焦躁的心。 低头, 干裂的伤口在融合, 融合只为了再次离别! 是什么让心儿...
    慕柳清阅读 487评论 0赞 2
  • 如果30+的年纪,你在自己喜欢的领域创业已经小有成就,你还会结束已有的一切,孤注一掷的在一个未知前途的领域重新开始...
    穗海阅读 1,668评论 2赞 3
  • 早上刚起床,迷迷糊糊地走到手机充电处,将手机进行充电,然后问了此刻正在卫生间洗脸的妈妈一句:妈妈,我要洗头,热水有...
    八月初秋叶柒凉阅读 249评论 0赞 1
  • 爱情来的时候,真的是悄无声息的,也许就在不经意的一个瞬间,你发现,你面前的这个人,你曾经善意嘲笑嫌弃过的这个人,他...
    玄女事务所阅读 312评论 0赞 0

友情链接更多精彩内容