zoukankan      html  css  js  c++  java
  • 复写page的Render方法

     

    public class SetToken :System.Web.UI.Page
        
    {
            

            
    protected override void Render(System.Web.UI.HtmlTextWriter writer) 
            

                StringWriter sw 
    = new StringWriter(); 
                HtmlTextWriter htmlWriter 
    = new HtmlTextWriter(sw); 
                
    base.Render(htmlWriter); 
                
    string html = sw.ToString()  ;
                Regex obj 
    = new Regex("<a.*?(?: |\\\\t|\\\\r|\\\\n)?href=[\\'\"]?(.+?)[\\'\"]?(?:(?: |\\\\t|\\\\r|\\\\n)+.*?)?>(.+?)<\\/a.*?>", RegexOptions.IgnoreCase | RegexOptions.Compiled);
                MatchCollection matches = obj.Matches(html);
                CompareList list 
    = new CompareList();
                
    foreach (Match match in matches)
                
    {
                    
    string url = match.Groups[1].Value.ToLower();
                    list.Add(url);
                }

                
    foreach (string url in list)
                

                    
    string newUrl=Utils.WriteUrl(url);
                    html 
    = html.Replace(url, newUrl);
                }

                writer.Write(html) ; 
            }

        }


    该代码实现了复写page的rander方法,给解析出来的超链接统一添加token标记。页面使用在页面上继承这个类就可以了。
  • 相关阅读:
    原生js设置cookie
    vuex数据持久化存储
    export和export default的区别
    userAgent判断是微信还是企业微信
    SVN的使用方法
    Js字符串反转
    通用JS10——一元加和减
    通用JS十——递增/递减操作符
    通用JS9
    @SuppressWarning注解用法
  • 原文地址:https://www.cnblogs.com/yg_zhang/p/1134596.html
Copyright © 2011-2022 走看看