Sep 16

javascript的html编码函数 (htmlspecialchars) 不指定

felix021 @ 2008-9-16 23:07 [IT » 网络] 评论(2) , 引用(0) , 阅读(13096) | Via 本站原创 | |
没有找到库函数,从网上看到一个,小修改下
能实现类似PHP htmlspecialchars()函数(对应vbscript server.htmlencode()方法)

@ 2010.3.23 p.s. 换用正则表达式应该会快很多
function htmlspecialchars(str)  
{  
    str = str.replace(/&/g, '&');
    str = str.replace(/</g, '&lt;');
    str = str.replace(/>/g, '&gt;');
    str = str.replace(/"/g, '&quot;');
    str = str.replace(/'/g, '&#039;');
    return str;
}


//这个版本多转换了一些内容
    function htmlspecialchars(str)  
    {  
        var s = "";
        if (str.length == 0) return "";
        for   (var i=0; i<str.length; i++)
        {
            switch (str.substr(i,1))
            {
                case "<": s += "&lt;"; break;
                case ">": s += "&gt;"; break;
                case "&": s += "&amp;"; break;
                case " ":
                    if(str.substr(i + 1, 1) == " "){
                        s += " &nbsp;";
                        i++;
                    } else s += " ";
                    break;
                case "\"": s += "&quot;"; break;
                case "\n": s += "<br>"; break;
                default: s += str.substr(i,1); break;
            }
        }
        return s;
    }




欢迎扫码关注:




转载请注明出自 ,如是转载文则注明原出处,谢谢:)
RSS订阅地址: https://www.felix021.com/blog/feed.php
阿斯顿
2010-4-9 15:14
dielove
sandy1
2008-9-18 10:51
“对应vbscript server.htmlencode()方法”
——汗,这个是ASP方法,JS也支持的……
felix021 回复于 2008-9-18 12:32
恩,ASP里面的server对象。
分页: 1/1 第一页 1 最后页
发表评论
表情
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
打开HTML
打开UBB
打开表情
隐藏
记住我
昵称   密码   *非必须
网址   电邮   [注册]