小编典典

使用 jQuery 转义 HTML 字符串

all

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


阅读 244

收藏
2022-03-04

共1个答案

小编典典

由于您使用的是jQuery,因此您只需设置元素的text属性:

// before:
// <div class="someClass">text</div>
var someHtmlString = "<script>alert('hi!');</script>";

// set a DIV's text:
$("div.someClass").text(someHtmlString);
// after: 
// <div class="someClass">&lt;script&gt;alert('hi!');&lt;/script&gt;</div>

// get the text in a string:
var escaped = $("<div>").text(someHtmlString).html();
// value: 
// &lt;script&gt;alert('hi!');&lt;/script&gt;
2022-03-04