我正在开发一个Web应用程序,我在其中为多个文件创建了一个页面 上传一次浏览而不是一次上传一个文件。
用户可以在点击浏览时选择多个文件。
如果某人有解决方案,请欢迎
谢谢!
答案 0 :(得分:8)
对于替代解决方案,您可以使用HTML5多重上传,
<强> HTML 强>
为您的输入文件设置属性多个,请查看此链接https://developer.mozilla.org/en-US/docs/Web/API/Input.multiple
<form id="form-upload">
<input type="file" name="upload" id="upload" multiple>
</form>
<强> JS 强>
使用juery上传文件,您可以使用表单数据:https://developer.mozilla.org/en-US/docs/Web/Guide/Using_FormData_Objects
$('#upload').bind("change", function(){
var formData = new FormData($("#form-upload")[0]);
//loop for add $_FILES["upload"+i] to formData
for (var i = 0, len = document.getElementById('upload').files.length; i < len; i++) {
formData.append("upload"+(i+1), document.getElementById('upload').files[i]);
}
//send formData to server-side
$.ajax({
url : "process_upload.php",
type : 'post',
data : formData,
dataType : 'json',
async : true,
processData: false, // tell jQuery not to process the data
contentType: false, // tell jQuery not to set contentType
error : function(request){
console.log(request.responseText);
},
success : function(json){
//place your code here
}
});
});
服务器-SIDE(例如:PHP)强>
//just print $_FILES
print_r($_FILES);
答案 1 :(得分:3)
Uploadify是一个非常好的文件上传JQuery插件。
它也很容易使用。来自文档:
$(document).ready(function() {
$('#file_upload').uploadify({
'uploader' : '/uploadify/uploadify.swf',
'script' : '/uploadify/uploadify.php',
'cancelImg' : '/uploadify/cancel.png',
'folder' : '/uploads',
'auto' : true
});
});
然后你需要的所有内容是:
<input id="file_upload" name="file_upload" type="file" />
显然也包括Uploadify脚本。
答案 2 :(得分:3)
之前我使用过jQuery Uploadify,在他们的论坛上也有很多支持!
答案 3 :(得分:0)
您可以使用Jquery Uploadify
等插件答案 4 :(得分:0)
您可以使用JQuery上传多个文件,请参阅此uploadify