【发布时间】:2017-11-10 09:41:12
【问题描述】:
我在使用 laravel,当用户发送短信时,它可能包含一些恶意代码。当我使用{{}} 时,它会显示用户发送的确切文本。如果他发送了
<script>alert("malicious")</script>
它会显示完全相同并且很好,但是当我使用 jquery ajax 时,我将获取的数据放在一些 html 标记中的一些变量中,最后将它们全部附加到一个主标记中,如下所示:
data = '';
//loop starts here // some otger codes deleted for cleanness
data += "<h2>"+response.name+"</h2>";
data += "<p>"+response.description+"</p>";
$('#mydata').html(data);
现在的问题是,如果我使用html(),用户恶意代码将被执行,如果我不这样做,结果将不会显示为html。
我想我应该对$.parseHTML 做点什么,不是吗?
谢谢
【问题讨论】:
标签: javascript jquery html ajax