textarea多行文本框换行保存和展示数据

在微信公众号开发自定义推送关注通知内容时,遇到的问题进行总结。

首先我们看下数据库对换行符的操作

数据库会过滤掉换行符号\n
UPDATE weixin_concern_notice SET notice_content ='哈哈哈,\n嘿嘿嘿!' where id='0afee4f0d29c4a2bb1a7ff52e64da53b';
结果:哈哈哈,嘿嘿嘿!
某些需求时我们需要取得内容是换行的,这时我们可以使用\n,数据库会将它保存为\n
UPDATE weixin_concern_notice SET notice_content ='哈哈哈,\\n嘿嘿嘿!' where id='0afee4f0d29c4a2bb1a7ff52e64da53b';
结果:哈哈哈,\n嘿嘿嘿!
方式一、我们也可以使用替换的方式解决问题。
将换行符替换为< br>
var content = $(this).val().replace(/\n|\r\n/g, "
"
);
数据库中:哈哈哈,< br>嘿嘿嘿!
取出数据展示时将< br>替换为\n
var reg = new RegExp("
"
, "g"); $("#notice").val(data.content.data.noticeContent.replace(reg, "\n"));
页面展示内容进行了换行。
同样数据获取到内容进行替换
String responseStr =getConcernNotice().replaceAll("
"
,"\n");
实现数据内容换行
方式二、保存时将换行符替换为 ‘\\n’
 var content = $(this).val().replace(/\n|\r\n/g, "\\n");
这样保存到数据库就是\n,当获取数据时也就实现了换行。

你可能感兴趣的:(前端页面)