Cloudinary Upload小部件 - 应用常规上传限制/停止上传过程

时间:2016-11-12 19:26:09

标签: javascript jquery file-upload limit cloudinary

我对Cloudinary jQuery Upload Widget有疑问。 http://cloudinary.com/documentation/upload_widget

我使用max_files值“2”来限制多个模式下的上传文件,但这意味着“每次上传尝试2个文件”(=如果用户再次单击“选择...”按钮,他可以上传更多图像)。< / p>

我想实现以下目标:

  • 对页面加载上的上传小部件应用上传图像的一般限制(例如:5)
  • 如果超出限制,则应显示警报。

我的代码示例如下。 查看上传成功功能。 它似乎在正确的情况下显示警报,但未应用限制,因为该功能在上载成功后运行。但是如果超出限制,我想停止上传文件。

    var uploaded_files_cnt = 0;
    $( document ).ready(function() {
        var uploaded_files_cnt = 0;
        cloudinary.openUploadWidget({ 
                cloud_name: 'X', 
                upload_preset: 'Y', 
                max_files: 2,
                inline_container: '#inline_container'       
                }, 
            function(error, result) { 
                imageresults = result;
                for (i = 0; i < imageresults.length; i++) 
                {           
                            if (uploaded_files_cnt >= 5)
                            {
                                alert('No more images!');   
                                return false;
                            }
                            uploaded_files_cnt++;           
                }           

          });
    });

我检查了小部件的API事件,但是我找不到有用的东西......

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

您所描述的行为可以通过使用回调函数中的jQuery来实现,例如:

<script src="http://code.jquery.com/jquery-2.1.3.min.js" 

type="text/javascript"></script>
<script src="//widget.cloudinary.com/global/all.js" type="text/javascript"></script>  

<div class="uploader"><a href="#" id="upload_widget_opener" class="cloudinary-button">Upload</a></div>
$('#upload_widget_opener').cloudinary_upload_widget( 
{ cloud_name: 'XXXXX', 
upload_preset: 'XXXXX', 
max_files: '5', 
inline_container: '#inline_container'  
}, 
function(error, result) { 
    console.log(error, result) 
    $('.uploader').toggle(); // closes the widget. You can change it to an alarm
});