首页 > 代码库 > MVC3/4 自定义HtmlHelper截断文本内容(截取)
MVC3/4 自定义HtmlHelper截断文本内容(截取)
在MVC目录下新建一个名为 Extersions 的文件夹,在该文件夹中新建一个截断文本类,取名为:CutOfTextExtersions
该类代码如下:
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc; namespace System.Web.Mvc //修改为所属System.Web.Mvc命名空间 方便直接使用 { /// <summary> /// 截取字符串类 /// </summary> public static class CutOfTextExtersions { /// <summary> /// 截取字符串方法 /// </summary> /// <param name="helper"></param> /// <param name="str">字符串</param> /// <param name="len">长度</param> /// <param name="flag">是否显示。。。</param> /// <returns></returns> public static string GotTopic(this HtmlHelper helper, string str, int len, bool flag) { if (str != null && str != "") { string clearstr = str.RemoveHTML(); int count = 0; string strTemp = ""; for (int i = 0; i < clearstr.Length; i++) { if (Math.Abs(((int)(clearstr.Substring(i, 1).ToCharArray())[0])) > 255) count += 2; else count += 1; if (count <= len) strTemp += clearstr.Substring(i, 1); else { strTemp = strTemp + (flag == true ? "…" : ""); return str.Replace(clearstr, strTemp); } } return str.Replace(clearstr, strTemp).Replace(" ", "").Trim(); } else return ""; } public static string RemoveHTML(this string str) { try { if (str != "") { str = System.Text.RegularExpressions.Regex.Replace(str, "<[^>]*>", ""); str = str.Replace(" ", " "); return str; } else return ""; } catch { return ""; } } } }
在View中使用该类:
@Html.ActionLink(@Html.GotTopic(@item.NewsTitle, 40, true)) @Html.ActionLink(@Html.GotTopic(@item.NewsTitle, 40, false))
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。