我正在使用backbone框架,当页面加载时传递集合的一般方法是:
window.router = new Routers.ManageRouter({store: #{@store.to_json});
一切都很好,运行良好,直到有人决定在一个存储字段中添加文本"<script>alert("owned")</script>
"。最后的</script>
显然关闭了JavaScript。如何规避这个问题?
:javascript
$(function() {
window.router = new Dotz.Routers.ManageRouter({store: #{@store.to_json}});
Backbone.history.start();
});
以上输出结果为:
<script>
//<![CDATA[
$(function() {
window.router = new Dotz.Routers.ManageRouter({store: '{"_id":"4f3300e19c2ee41d9a00001c", "points_text":"<script>alert(\"hey\");</script>"'});
Backbone.history.start();
});
//]]>
</script>