如何使用jquery或JavaScript在一次浏览中上传多个文件
我正在开发一个Web应用程序,我在其中创建了一个页面,用于一次浏览多个文件,而不是一次一个文件。
用户可以在点击浏览时选择多个文件。
如果有人有解决方案请欢迎
谢谢!
对于替代解决方案,您可以使用HTML5多重上传,
HTML
为输入文件设置属性倍数 ,请检查此链接https://developer.mozilla.org/en-US/docs/Web/API/Input.multiple
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 } }); });
服务器端(例如:PHP)
//just print $_FILES print_r($_FILES);
Uploadify是一个非常好的文件上传JQuery插件。
它也很容易使用。 来自文档:
$(document).ready(function() { $('#file_upload').uploadify({ 'uploader' : '/uploadify/uploadify.swf', 'script' : '/uploadify/uploadify.php', 'cancelImg' : '/uploadify/cancel.png', 'folder' : '/uploads', 'auto' : true }); });
那么你在HTML中需要的是:
显然也包括Uploadify脚本。
我之前使用过jQuery Uploadify,在他们的论坛上也有很多支持!
你可以使用像Jquery Uploadify这样的插件
您可以通过使用JQuery上传多个文件来执行此操作,请参阅此uploadify