我试图找到问题“如何在不重新加载标签的情况下提交文件”的答案。我来到这个帖子Uploading file in a form without page refresh在这个帖子中,最好的答案是“使用隐藏的iframe”。但是如果我们使用隐藏的iframe,则可以在不刷新页面的情况下将表单数据提交到另一个文件。但是如何在不重新加载的情况下将文件(使用iframe)提交到当前文件(页面)。我正在使用
<form action="<?php echo $_SERVER["PHP_SELF"];?> enctype="multipart/form-data">
<input type="file" name="image">
<input type="submit">
</form>
我认为在我的情况下,我们甚至无法使用seralize()
方法。所以我们如何在不重新加载的情况下在同一页面上提交文件。我认为iframe可能不是解决方案。
答案 0 :(得分:0)
这里我使用了jquery这样的..你必须创建 FormData
的对象jQuery("body").on("beforeSubmit", "form#YOUR_FORM_ID", function() {
var form = jQuery(this);
jQuery.ajax({
url: form.attr("action"),
type: "POST",
data: new FormData(this),
processData: false,
contentType: false,
async: false,
success: function(response) {
if (response) {
//your response
}
},
error: function() {
console.log("internal server error");
}
});
return false;
});