我有一個表單與ajax文件上傳。 Javascript使用表單創建iframe,將輸入與文件一起移動到表單中並提交表單。iframe文件上傳和NoScript插件
這工作沒有任何問題,但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"));
})
你能發佈javascript代碼嗎? – Banjer
代碼已添加。 – Ximik
而不是創建IFrame和窗體動態使他們作爲頁面的HTML的一部分 –