首页 新闻 搜索 专区 学院

在服务端如何换行,空格

0
悬赏园豆:5 [已解决问题] 解决于 2012-05-12 11:55

例如:

@Model.ResourceName.Replace("n","<br />")

@Model.ResourceName.Replace(" ","&nbsp;")

这是我从服务端经过处理取到的数据,然后在view上显示,如果ResourceName包含n这个字,那么就换行,如果ResourceName包含空的话,那么就显示空格,为什么我这样写没有用,请教大虾帮忙啊,多谢啦。

程旭媛的主页 程旭媛 | 初学一级 | 园豆:79
提问于:2012-05-12 11:19
< >
分享
最佳答案
0

mvc里的@输出是会对字符串进行HTML编码后再输出的,因此,假如你要输出的字符串里带有HTML代码,期望在浏览器里以HTML的形式展示是达不到的,此时会在浏览器里显示成HTML代码的内容。

要解决这个问题,你可以使用MvcHtmlString,这个类型很简单,没有任何的特殊,唯一的作用是,当@输出的对象是MvcHtmlString的时候不进行HTML的编码转换,而是直接输出起内容。

因此你的代码可以修改为:

@new MvcHtmlString(Model.ResourceName.Replace("n","<br />"))

@new MvcHtmlString(Model.ResourceName.Replace(" ","&nbsp;"))

收获园豆:5
无之无 | 大侠五级 |园豆:5085 | 2012-05-12 11:33

 

直接报错啊,是不是还要添加引用啊?

程旭媛 | 园豆:79 (初学一级) | 2012-05-12 11:46

@好闻?: @MvcHtmlString.Create(Model.ResourceName.Replace("n","<br />"))这样就对啦。嘿嘿!谢谢啦。

程旭媛 | 园豆:79 (初学一级) | 2012-05-12 11:55
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册