我有一个带有 ajax 文件上传的表单。Javascript 使用表单创建 iframe,将输入与文件一起移动到表单中并提交表单。
这没有任何问题,但是 Firefox 中流行的 NoScript 插件认为它是 XSS 并将我的 POST 请求转换为 GET。所以它不起作用。有没有可能规避这个问题?
代码(使用 jQuery)
function add_input_file(div) {
var input = $("<input>").attr("type", "file").attr("name", "file");
input.appendTo(div);
input.change(function() {
$(this).off();
var iframe = $("<iframe>");
iframe.appendTo($("body"));
iframe.load(function() {
$(this).off();
var input = $(this).data("input");
var form = $("<form>").attr("method", "post").attr("action", "/send").attr("enctype", "multipart/form-data").attr("accept-charset", "UTF-8");
form.appendTo($(this).contents().find("body"));
input.appendTo(form);
add_input_file($("#att"));
form.submit();
});
});
}
$(function() {
add_input_file($("#att"));
})