我目前对javascript/jQuery和rails有点陌生,并且正在使用带有select2-rails的text_field_tag来创建具有自动完成等功能的标记。
它现在工作得很好,但只是出于好奇,我放了
<脚本>alert("hello");脚本>
(不带空格)并弹出警报。这不是很不安全吗?我应该添加什么来阻止 javascript 在该text_field中执行吗?
编辑::这是我在该页面上的javascript,适用于我的text_field_tag:
$(document).ready(function() {
$("#filter-in-postkey-select2").select2( {
width : "450px",
placeholder : "No postkeys. Add some here now!",
minimumInputLength : 1,
maximumSelectionSize : 5,
tags : ["red", "brown", "green"],
tokenSeparators : [",", " "]
});
});
我的文本字段很简单:
<%= text_field_tag "filter-in-postkey-select2" %>
您可以使用
诸如XSS_terminate
然后,就像在模型中执行此操作一样简单:
class YourModel < ActiveRecord::Base
xss_terminate :except => [ :your_input_field_to_be_exempt ]
end