首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用javascript中的uploadcare限制文件类型?

如何使用javascript中的uploadcare限制文件类型?
EN

Stack Overflow用户
提问于 2014-11-10 18:35:33
回答 1查看 439关注 0票数 2

当我打开一个带有uploadcare的对话框时,我试图限制文件类型(只有mp3文件)。

代码语言:javascript
复制
        uploadcare.loadFileGroup(soundGroupID)
        .done(function (fileGroup) {
            uploadcare.openDialog(fileGroup.files(), {
                multiple: true,
                multipleMin: 0,
                fileTypes="mp3"
            }).done(
                function (file) {
                    file.promise().done(
                        function (fileInfo) {
                            //TODO Something
                        });
                });
        })
        .fail(function () {
            // Something went wrong.
        });

有什么办法来推送验证器吗?有任何方式访问小部件吗?如您所见,我正在打开一个对话框,因此无法访问任何地方的小部件。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-11-10 18:55:33

不幸的是,当前API中没有用于对话框的验证器,只有小部件。但是您可以创建假小部件并在其上使用.openDialog()方法。

代码语言:javascript
复制
uploadcare.loadFileGroup(soundGroupID)
.done(function (fileGroup) {
    var widget = uploadcare.MultipleWidget('<input data-multiple multiple-min="1">');
    widget.validators.push(function(info) {
        if (info.name !== null) {
            if ( ! /\.mp3$/i.test(info.name)) {
                throw Error('mp3-only');
            }
        }
    });
    widget.openDialog(null).done(
        function (file) {
            file.promise().done(
                function (fileInfo) {
                    //TODO Something
                });
        });
})
.fail(function () {
    // Something went wrong.
});

或者,您可以在私有__validators选项中传递验证器列表,但这是内部API,可以在以后的版本中更改

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26850555

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档