有时候我们需要动态生成html内容保存到数据库或者服务器地址,但是用javascript做这样的代码提取成字符串的话不同的浏览器得到的结果不同,主要是大小写区别,比如ie8得到的是大写的标签,火狐得到的是小写。其实大小写也没什么影响,但是在比较特殊的情况下就不行了。如果你将得到的html代码在一个模版中运用,模版中又有对html操作的javascript代码,而代码中有根据标签操作的方法,那么javascript中是区分标签的大小写的,这时候就不统一了。

那这时候唯一的方法就是下面的方法:对html代码进行处理,使大写标签改为消协标签,在模版中的javascript代码中一律用小写形式。问题得到解决。

public static string htmlToLower(string htmls)
    {
        MatchCollection matchs = Regex.Matches(htmls, @"(?<tag><[^\s>]+\s)|(?<tag><[^\s>]+>)");
        Regex.Replace("", "", "");
        foreach (Match match in matchs)
        {
           
            string tag = match.Value.ToLower();
            htmls=htmls.Replace(match.Value, tag);
        }
        return htmls;
    }

posted on 2012-11-16 15:32  bzryk  阅读(2139)  评论(1编辑  收藏  举报