有没有人知道在jQuery中从字符串中转义HTML的简单方法?我需要能够传递任意字符串并将其正确转义以便在HTML页面中显示(防止JavaScript/HTML注入攻击).我确信可以扩展jQuery来实现这一点,但我目前还不了解框架来完成这个任务.
如何使用JavaScript或JQuery对HTML实体进行编码和解码?
var varTitle = "Chris' corner";
Run Code Online (Sandbox Code Playgroud)
我希望它是:
var varTitle = "Chris' corner";
Run Code Online (Sandbox Code Playgroud) 我有类似的字符串
var str = 'One & two & three';
Run Code Online (Sandbox Code Playgroud)
由Web服务器呈现为HTML.我需要将这些字符串转换为
'One & two & three'
Run Code Online (Sandbox Code Playgroud)
目前,这就是我正在做的事情(借助jQuery):
$(document.createElement('div')).html('{{ driver.person.name }}').text()
Run Code Online (Sandbox Code Playgroud)
但是我有一种不安的感觉,我做错了.我试过了
unescape("&")
Run Code Online (Sandbox Code Playgroud)
但它似乎不起作用,decodeURI/decodeURIComponent也没有.
有没有其他更原生和更优雅的方式呢?
我想通过javascript函数向HTML显示文本.如何在JS中转义html特殊字符?有API吗?
是否有任何人知道如何特殊字符转换为HTML在Javascript?
例:
&(&符号)变成了&."(双引号)成为"时ENT_NOQUOTES未设置.'(单引号)'仅在ENT_QUOTES设置时才变为.<(小于)成为<.>(大于)成为>.试试看:
encodeURIComponent("'@#$%^&");
Run Code Online (Sandbox Code Playgroud)
如果你试试这个,你会看到所有特殊字符都被编码,除了单引号.我可以使用什么函数对所有字符进行编码并使用PHP对其进行解码?
谢谢.
例如,如果我想向用户显示x < 3HTML中的字符串,我需要替换该<字符<.是否有预先构建的函数可以在JavaScript或jQuery中执行此操作,将任何文本字符串转换为相应的HTML?
iFrame是否可以显示源的原始代码而不是将其呈现出来?如果是这样,你如何做到这一点,它可以在JavaScript上完成吗?