我通过Ajax获取表单页面。 以下是一种代码形式:
enter code here
<form method="post" enctype="multipart/form-data" class="form-horizontal">
<div class="form-group" style="margin-left:0px;">
<label for="file">注:选择头像文件尽量小于2M</label>
<input id="headPortraitFile" type="file" name="portrait">
</div>
<button id="headPortraitSubmit" type="button" class="btn-sm btn-primary">上传头像</button>
</form>
但是输入类型的形式=&#34;文件&#34;在浏览器中无法直接选择文件,更不用说提交的文件了。我不知道是什么原因?这两天还没有解决,对于一个伟大的上帝!!!!!!
这是Ajax代码: 我得到了表格页面:
$(Document).on("click", '#headPortrait', function() {
$.get("/headPortrait", function(data) {
$(".bodyPart").children().remove();
$(".bodyPart").html(data);
})
})
2.然后我发布表格:
$(Document).on("click", '#headPortraitSubmit', function() {
var formData = new FormData();
formData.append("portrait", $('#headPortraitFile').get(0).files[0])
$.ajax({
url : "/headPortraitSubmit",
type : 'POST',
data : formData,
processData : false,
contentType : false,
beforeSend:function(){
console.log("正在进行,请稍候");
},
success : function(data) {
if (data = "success") {
$(".bodyPart").children().remove();
$(".bodyPart").load('/coding');
}
},
});
})
答案 0 :(得分:0)
for
属性值应与id
的{{1}}匹配,如果预期结果是<input type="file">
元素在change
元素被调用时<input type="file">
单击元素。在<label>
的{{1}}属性上替换"submit"
"button"
。
type
是一个功能,而不是<button>
Document
。将html
替换为传递给document
的参数document
:Document
。
jQuery()
中的 $()
条件应使用if
或success
来比较==
与===
的值,而不是data
} {} "success"
标识符。
"success"
data
&#13;
$(document).on(/* event, selector, eventHandler */)
&#13;
$(document).on("click", '#headPortraitSubmit', function() {
var formData = new FormData();
formData.append("portrait", $('#headPortraitFile').get(0).files[0]);
console.log(formData.get("portrait"));
/*
$.ajax({
url : "/headPortraitSubmit",
type : 'POST',
data : formData,
processData : false,
contentType : false,
beforeSend:function(){
console.log("正在进行,请稍候");
},
success : function(data) {
if (data === "success") {
$(".bodyPart").children().remove();
$(".bodyPart").load('/coding');
}
},
});
*/
});
document.querySelector("form")
.onsubmit = function(event) {
event.preventDefault();
}
document.querySelector("input[id=headPortraitFile]")
.onchange = function(event) {
console.log(this.files[0])
}
&#13;