最近做网站发现在文本输入框输入文章,段落之间有换行,存到数据库里再读出来到页面显示出现时,不已原格式显示
提出解决问题如下:
1、提交时后将段落之间的标记替换成<br/>
<script>
var context = $("#idcontext").val();
context = context.replace(/\n|\r\n/g,"<br/>");
//其他操作
</script>
补加一个需要注意的坑:
如果要将数据从前端提交到后端,需要加一个注解,不然会因为携带特殊标记类似<></>禁止提交数据。
在Action前加 注解: [ValidateInput(false)]
2、由于我是基于asp.net MVC5,cshtml使用Razor标记语言,使用@Model传值,其实不管是什么方式传值,只要你传过来的值有HTML标记语言都适用(括号里的是你的传值)
//方法一
@Html.Raw(@Model.Context)
//方法二
@(new HtmlString(@Model.Context))