Javascript 防止从输入字段运行JS代码,然后由JS添加

Javascript 防止从输入字段运行JS代码,然后由JS添加,javascript,xss,option,Javascript,Xss,Option,我有这样的代码 $.each(inputOptions, function (key, element) { $options.append("<option value=" + element.value + ">" + element.key + "</option>>"); }); $。每个(输入选项、功能(键、元素){ $options.append(“+element.key+”>”); }); 它

我有这样的代码

       $.each(inputOptions, function (key, element) {
            $options.append("<option value=" + element.value + ">" + element.key + "</option>>");
        });
$。每个(输入选项、功能(键、元素){
$options.append(“+element.key+”>”);
});

它可以创建动态字段,除了'element.key'实际上是有效的JS脚本外,一切都很好!所以类似于警报(“XSS”)将生成警报。如何预防?我知道从浏览器的角度来看,它和内联JS一样,但还有什么解决办法吗

使用DOM方法或它们的jQuery抽象,将字符串视为文本而不是HTML

$options.append(
    $("<option />")
        .attr("value", element.value)
        .text(element.key)
);
$options.append(
$("")
.attr(“值”,元素.value)
.text(element.key)
);

使用DOM方法或它们的jQuery抽象,将字符串视为文本而不是HTML

$options.append(
    $("<option />")
        .attr("value", element.value)
        .text(element.key)
);
$options.append(
$("")
.attr(“值”,元素.value)
.text(element.key)
);

可能重复的可能重复但如果我有DataTable插件??像这样的东西完全破坏了它。但是如果我有DataTable插件??像这样的事情完全破坏了它。