【发布时间】:2013-03-16 19:39:27
【问题描述】:
我一直在聊天框工作,我使用 Node.js + socket.io 进行客户端-服务器通信,所以我无法执行 PHP 代码(我读过这是可能的,但不建议这样做,也很难达到)。一切正常,除非用户发送带有 HTML 或 Scripts 标签的消息。
我尝试使用在here 中找到的函数删除这些标签。它工作正常,但仅适用于 HTML 标签,然后我想:好吧,我可以先使用正则表达式删除 Script 标签。像这样的
.replace(/<script.*>.*<\/script>/ims, " ")
然后删除HTML标签,但我不确定这个方法是否是黑客证明,每条发送的消息都有很多过程。
是否有任何形式的附加 text$("#div").append(message); 而不呈现 HTML/JavaScript 代码? --- 按原样打印文本,例如在twitch.tv 中,如果您发送带有 HTML/JS/PHP 代码的消息,则消息会按照您键入的方式打印。
或者,有没有其他方法可以删除标签?
感谢您的宝贵时间。
【问题讨论】:
-
可以调用
.text()函数。 -
.append() 追加到 div。 .text() 将替换整个 div。 IMO 不是一个好主意
标签: javascript jquery node.js socket.io