textarea文本保存到数据库,前端输出保存换行回车解决方案

处理这种文本输出格式的,使用富文本编辑器是比较方便的,但我这里写的不是使用富文本编辑器的处理方法!

那么,从数据库取出text文本到前端展示格式一致的解决方案主要有两种(仅Web端,其他平台没有调试):

一:提交数据之前,将textarea的回车、空格先转换格式,再提交数据存入数据库,那样取出数据输出到web端也能保证格式一致

//关键js代码
var text = $("textarea").text(); 
var des = text.replace(/\r\n/g, '
').replace(/\n/g, '
').replace(/\s/g, ' '); //转换格式 //将des文本内容存入数据库 //取出渲染视图即可

二:当数据库存储的是原生的textarea文本,这时候,输出到前端前需要解析文本。

前提:textarea文本上传到后台时已经包含了换行回车符,如果你发现textarea上传时没有保存换行回车,可以尝试设置textarea标签属性wrap=“hard”(html5支持)

        $(function() {
		init();
	});
 
	function init() {
		var text = $("div.text").text(); //先取出未转换格式前端数据
		var des = text.replace(/\r\n/g, '
').replace(/\n/g, '
').replace(/\s/g, ' '); //转换格式 $("div.text").empty(); $("div.text").append(des); }

ps:建议使用$(“div.text”).empty(); $(“div.text”).append(des); 替换为转换格式后的前端文本,

   不要直接使用$("div.text").text(des); 替换文本;因为text方法会指定内容为text,那么
标签会被直接输出而不会浏览器解析为换行!

你可能感兴趣的:(前端输出保存换行回车解决方案)