Dropzone.js实现文件拖拽上传
2017-01-04 14:23
741 查看
dropzone.js是一个开源的JavaScript库,提供 AJAX 异步文件上传功能,支持拖拽文件、支持最大文件大小、支持设置文件类型、支持预览上传结果,不依赖jQuery库。
就这样,Dropzone会自动找到.dropzone的表单form元素,并且通过action属性,上传到后台接收文件的程序,如upload.php,就像接受一个很普通的file input表单:
然后,在你的upload.php中写上传代码,Dropzone官网下载的只有js代码,没有后台的上传代码,不过,helloweba.com为您提供了php版的完整上传实例代码,欢迎下载源码。
接下来就是引入dropzone.js了。
然后什么都不用做了,打开浏览器,测试拖拽上传效果。当然样式你可以自己写,也可以参照我们的实例代码。
还有一种情况,我们不希望上传的html中有form表单,那么好,我们只要在html中放置一个div#mydropzone
然后,配置一下js调用:
如果您使用的是jquery,那么jQuery版的可以这样调用:
运行你的网页,是不是一样可以看到上传效果。
url:最重要的参数,指明了文件提交到哪个页面。
method:默认为post,如果需要,可以改为put。
paramName:相当于<input>元素的name属性,默认为file。
maxFilesize:最大文件大小,单位是 MB。
maxFiles:默认为null,可以指定为一个数值,限制最多文件数量。
addRemoveLinks:默认false。如果设为true,则会给文件添加一个删除链接。
acceptedFiles:指明允许上传的文件类型,格式是逗号分隔的 MIME type 或者扩展名。例如:image/*,application/pdf,.psd,.obj
uploadMultiple:指明是否允许 Dropzone 一次提交多个文件。默认为false。如果设为true,则相当于 HTML 表单添加multiple属性。
headers:如果设定,则会作为额外的 header 信息发送到服务器。例如:{"custom-header": "value"}
init:一个函数,在 Dropzone 初始化的时候调用,可以用来添加自己的事件监听器。
forceFallback:Fallback 是一种机制,当浏览器不支持此插件时,提供一个备选方案。默认为false。如果设为true,则强制 fallback。
fallback:一个函数,如果浏览器不支持此插件则调用。
使用Dropzone
我们可以建立一个正式的上传form表单,并且给表单一个.dropzone的class。<form id="mydropzone" action="/upload.php" class="dropzone"></form>
就这样,Dropzone会自动找到.dropzone的表单form元素,并且通过action属性,上传到后台接收文件的程序,如upload.php,就像接受一个很普通的file input表单:
<input type="file" name="file" />
然后,在你的upload.php中写上传代码,Dropzone官网下载的只有js代码,没有后台的上传代码,不过,helloweba.com为您提供了php版的完整上传实例代码,欢迎下载源码。
接下来就是引入dropzone.js了。
<script src="dropzone.min.js"></script>
然后什么都不用做了,打开浏览器,测试拖拽上传效果。当然样式你可以自己写,也可以参照我们的实例代码。
还有一种情况,我们不希望上传的html中有form表单,那么好,我们只要在html中放置一个div#mydropzone
<div id="mydropzone" class="dropzone"></div>
然后,配置一下js调用:
var myDropzone = new Dropzone("div#mydropzone", { url: "upload.php"});
如果您使用的是jquery,那么jQuery版的可以这样调用:
$("#dropz").dropzone({ url: "upload.php" })
运行你的网页,是不是一样可以看到上传效果。
配置Dropzone
Dropzone的特色就在于非常灵活,提供了许多可选项、事件等。下面是Dropzone几个常用的配置项。url:最重要的参数,指明了文件提交到哪个页面。
method:默认为post,如果需要,可以改为put。
paramName:相当于<input>元素的name属性,默认为file。
maxFilesize:最大文件大小,单位是 MB。
maxFiles:默认为null,可以指定为一个数值,限制最多文件数量。
addRemoveLinks:默认false。如果设为true,则会给文件添加一个删除链接。
acceptedFiles:指明允许上传的文件类型,格式是逗号分隔的 MIME type 或者扩展名。例如:image/*,application/pdf,.psd,.obj
uploadMultiple:指明是否允许 Dropzone 一次提交多个文件。默认为false。如果设为true,则相当于 HTML 表单添加multiple属性。
headers:如果设定,则会作为额外的 header 信息发送到服务器。例如:{"custom-header": "value"}
init:一个函数,在 Dropzone 初始化的时候调用,可以用来添加自己的事件监听器。
forceFallback:Fallback 是一种机制,当浏览器不支持此插件时,提供一个备选方案。默认为false。如果设为true,则强制 fallback。
fallback:一个函数,如果浏览器不支持此插件则调用。
相关文章推荐
- Dropzone.js实现文件拖拽上传
- Dropzone.js实现文件拖拽上传
- Dropzone.js实现文件拖拽上传
- Java实现拖拽文件上传dropzone.js的简单使用示例代码
- Dropzone.js实现文件拖拽上传
- Dropzone.js实现文件拖拽上传功能(附源码下载)
- dropzone.js 拖拽上传文件
- 拖拽文件上传(Java篇)dropzone.js的简单使用
- ASP.NET MVC中使用Dropzone.js实现图片的批量拖拽上传
- DropzoneJS是一个提供文件拖拽上传并且提供图片预览的开源类库.
- JavaScript 文件拖拽上传插件 dropzone.js 学习总结。
- DropzoneJS 使用指南(文件拖拽上传)
- JavaScript 文件拖拽上传插件 dropzone.js 介绍
- dropzonejs中文翻译手册 DropzoneJS是一个提供文件拖拽上传并且提供图片预览的开源类库.
- JavaScript 文件拖拽上传插件 dropzone.js 介绍
- JavaScript 文件拖拽上传插件 dropzone.js 介绍
- ASP.NET MVC中使用Dropzone.js实现图片的批量拖拽上传
- php和js实现文件拖拽上传
- 文件上传工具--dropzone.js
- 解决:Dropzone.js的图片拖拽上传保存本地文件夹