• 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("&nbsp;", " ");
                        return str;
                    }
                    else
                        return "";
                }
                catch
                {
                    return "";
                }
            }
        }
    }

    在View中使用该类:

     @Html.ActionLink(@Html.GotTopic(@item.NewsTitle, 40, true))  @Html.ActionLink(@Html.GotTopic(@item.NewsTitle, 40, false))  

  • 相关阅读:
    selenium 模拟键盘事件 复制粘贴、右键、回车等
    02安卓用户界面优化之(二)SlidingMenu使用方法
    02Android用户界面优化之(一)Android Fragment
    (九)Android权限系统
    Android SDK 在线更新镜像服务器资源
    (八)Android广播接收器BroadcastReceiver
    (七)Android中AIDL的应用与理解
    (六)Android中Service通信
    (五)认识Android中的Service
    Gradle中文乱码
  • 原文地址:https://www.cnblogs.com/yechangzhong-826217795/p/3769903.html
Copyright © 2020-2023  润新知