因为想上传文件然后后台给出回应,前台进行提示上传是否成功
所以用form表单直接上传是不可以的,所以选用了ajax进行上传.
用ajax时,出现了题目中的问题,找了半天,将其解决.可以对照看看
上代码
<input id="file" type="file" name="file" title="选择文件" ><br>
js代码:
function uploadfile() {
var formData = new FormData();
formData.append("file",$('#file')[0].files[0])
var filename = $('#file')[0].files[0].name
// alert(window.location.host)
$.ajax({
type:'POST', //这是必须写的,我就是忘了写其格式,就出现了该错误
url :'/upload',
data:formData,
processData: false, //对数据不做处理
cache:false, //上传文件不需要缓存
contentType: false,
mimeType:"multipart/form-data",
success:function (data) {
Messenger().post({ //这是一个提示的小插件
message : filename + "上传成功",
// hideAfter: 10
})
setTimeout(function () {
window.location.reload()
},1000)
}
})
}
//当选择文件后,自动上传文件
$(function () {
var input = $('#file');
input.change(function () {
if($(this).val()!='')
uploadfile()
})
})