开发者社区> 问答> 正文

使用jQuery转义HTML字符串

有谁知道一种简单的方法来从jQuery的字符串中转义HTML ?我需要能够传递任意字符串并正确地对其进行转义以显示在HTML页面中(防止JavaScript / HTML注入攻击)。我敢肯定可以扩展jQuery来做到这一点,但是目前我对框架的了解还不够。

展开
收起
游客ufivfoddcd53c 2020-01-03 21:33:11 1026 0
1 条回答
写回答
取消 提交回答
  • 如果您转义使用HTML,那么我认为只有三点是真正必要的:

    html.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">");
    
    

    根据你的使用情况,您可能还需要做这样的事情"来"。如果列表足够大,我将使用一个数组:

    var escaped = html;
    var findReplace = [[/&/g, "&"], [/</g, "<"], [/>/g, ">"], [/"/g, """]]
    for(var item in findReplace)
        escaped = escaped.replace(findReplace[item][0], findReplace[item][1]);
    
    

    encodeURIComponent() 只会针对网址而不是HTML进行转义。

    2020-01-03 21:33:52
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
《零基础HTML入门教程》 立即下载
天猫 HTML5 互动技术实践 立即下载
天猫HTML5互动技术实践 立即下载