如何使用jQuery阻止脚本在文本框中执行?
这是我的完整问题:
我想使用jQuery向某人发送消息;如果我输入了a
,href
,script
等脚本标记,则它们不会出现在对方的消息中。我该如何防止这种情况?
答案 0 :(得分:1)
你应该问的问题是:
如何将包含HTML的文本呈现为文本而不是HTML?
因为你的例子都是关于HTML的,而不是脚本。
由于您使用的是jQuery,请使用$element.text(text)
而不是$element.html(text)
将其添加到文档中。
答案 1 :(得分:0)
您需要Encode
用户撰写的文字。
最常见的方法是在服务器端执行,例如使用ASP,您需要:
strData = Server.HTMLEncode(strData);
然后,如果数据包含<b>hello</b>
,则用户将按字面意思看到它。
要做客户端:HTML-encoding lost when attribute read from input field