我们的控制器上有一个动作,它返回一个带有 id 和名称的 json 结果。然后我们拿它做这个..
var markup = '';
for(var i = 0; i < data.length; i++) {
markup += '<option value="' + data[i].id + '">' + data[i].agentName + '</option>';
}
$("#agentId").html(markup);
这+ data[i].agentName +
使我们面临 xss 攻击,因此我试图找出处理这种情况的最佳方法。
到目前为止,我的“最佳”选项似乎是看看我是否可以在服务器端使用 AntiXss 库并在返回之前对 agentName 进行编码。我说“最好”是因为(截至 2012 年 5 月 14 日)AntiXss 库受到了很多仇恨,所以我不喜欢使用它的想法。
还有其他选择吗?
更新
<select id="agentId"></select>
是我如何构建我将要添加到的选择元素..