dropzone.js图片上传acceptedMimeTypes

use*_*178 26 php jquery file-upload dropzone.js

我正在使用dropzone.js插件向我的应用程序添加图像上传器.我知道这可能是一个非常基本的问题所以道歉但我想要做的是限制文件扩展名.这适用于单个文件扩展名,

<script type="text/javascript">
   Dropzone.options.dropzone = {
        accept: function(file, done) {
            console.log(file);
            if (file.type != "image/jpeg") {
                done("Error! Files of this type are not accepted");
            }
            else { done(); }
        }
    }
 </script>
Run Code Online (Sandbox Code Playgroud)

所以我的问题是如何添加多个文件扩展名,例如image/jpeg,image/png

谢谢

eny*_*nyo 114

我是Dropzone的作者.

你应该使用.这与元素的属性完全相同.这样,即使是后备也能正常工作.acceptedMimeTypes acceptedFilesinputaccept

有效acceptedFiles属性可能如下所示:

  • audio/*
  • image/*
  • image/jpeg,image/png
  • 等等...

编辑:在最新版本的Dropzone中调用此属性acceptedFiles,它还允许您定义扩展.这样可行:

"audio/*,image/*,.psd,.pdf"

(为了向后兼容acceptedMimeTypes,在下一个主要版本发布之前仍然有效)

  • 有一个类似的财产,但反过来会很好.阻止某些文件类型.例如,我将这个上传器与PHP结合使用,我不关心他们上传的文件,只要它们不是PHP文件.我现在可以通过PHP做到这一点.我真的很喜欢你做的这个上传者,干得好. (3认同)

Sac*_*hin 27

感谢enyo它工作....真棒...只需在dropjone.js->中粘贴该行

uploadMultiple: true,  //upload multiple files
maxFilesize: 1,  //1 mb is here the max file upload size constraint
acceptedFiles: ".jpeg,.jpg,.png,.gif",
Run Code Online (Sandbox Code Playgroud)

http://www.dropzonejs.com/#config-acceptedFiles

accept的默认实现根据此列表检查文件的mime类型或扩展名.这是一个以逗号分隔的mime类型或文件扩展名列表.例如:'image/*,application/pdf,.psd' 如果可以单击Dropzone,则此选项也将用作隐藏文件输入的接受参数.


jde*_*ere 14

您可以为您添加更多扩展程序if,如下所示:

if (file.type != "image/jpeg" && file.type != "image/png") {
Run Code Online (Sandbox Code Playgroud)

这将检查文件类型是否与您指定的所有类型不同.对于要通过检查的文件,它必须与image/jpeg AND image/png不同

更新

我建议看看enyo的答案,因为他是Dropzone的作者.


小智 6

var myDropzone = new Dropzone('div#profile_pictures',{
    acceptedFiles: "image/*", /*is this correct?*/
    init: function(){
        this.on("success", function(file, data) {
            /*..*/
            });
        } 
})
Run Code Online (Sandbox Code Playgroud)