我在使用jquery / ajax上传多个文件上传时遇到问题。
我的问题是,当我尝试提交带有png或jpg文件的文件时,它甚至没有提交,它会提醒请上传文件,即使我已经放了文件。
我应该怎么做才能进入我的其他声明。因为我试图删除我的条件我只是把ajax和它工作,并把我的数据库。但是当我提出一个具有适当文件扩展名的条件时,即使我已经将jpg或png文件仍然存在,它也会提醒我们上传文件。
这是我的代码
HTML
<!-- MULTIPLE UPLOAD FORM -->
<h1>Multiple File Upload</h1>
<form id="multiple" method="POST" enctype="multipart/form-data">
<input type="file" id="file" name="file[]" multiple />
<input type="submit" id="multBtn" value="Upload File">
</br>
</form>
Jquery的
$("#multBtn").on('click',function(e){
e.preventDefault();
var imgData = document.getElementsByName('file')[0];
var imageUploadPath = imgData.value;
if(imageUploadPath == ''){ // user did not upload anything
alert('Please Upload File');
}
else{
//user uploaded a file
var Extension = imageUploadPath.substring(imageUploadPath.lastIndexOf('.')+1).toLowerCase();
if(Extension == "png" || Extension == "Jpeg" || Extension == "jpg"){
$.ajax({
url: '/uploadMultipleImg',
type: 'POST',
data: new FormData($(this).parents('form')[0]),
cache: false,
contentType: false,
processData: false,
success: function(data){
},
});
return false;
} }
答案 0 :(得分:0)
要检查文件是否被选中,请使用:
var fileUpload = $("#file").get(0);
var files = fileUpload.files;
然后循环遍历这样的文件:
for (var i = 0; i < files.length; i++) {
//code
}
更改文件输入名称并使其与ID相同。
<input type="file" id="file" name="file" multiple />
您可以使用ajax查看有关文件上传的this教程,这将有所帮助。