2016-11-12 13 views
0

У меня возник вопрос о CloudMaker jQuery Upload Widget. http://cloudinary.com/documentation/upload_widgetCloud Cloud Upload Widget - применить общий лимит загрузки/остановить процесс загрузки

Я использую значение MAX_FILES «2», чтобы ограничить закачивать файлы в множественным режиме, но это означает, что «2 файлов в попытке загрузки» (= если пользователь нажимает кнопку Выбрать ... еще раз, он может загружать больше изображений).

Я хочу добиться:

  • применять общий лимит загружаемых изображений для виджета загрузки на странице загрузки (например: 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 событий виджета, но я не нахожу что-то полезное ...

Любая идея?

ответ

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 
}); 
+0

Спасибо за ответ! :) Я понимаю ваше решение, но мне нужен способ показать дружеское сообщение пользователю и отключить использование виджета, а не просто исчезновение виджета. Мне нужно просто отключить виджет от загрузки большего количества файлов. Добавить следующий код в функции обратного вызова, но он не работает: \t \t \t \t \t \t \t $ ("# inline_container *") атр ("отключено", "отключено") выключен ('щелчок');.. \t \t \t \t \t \t \t $ ('cloudinary_fileupload') атр ("отключено", "отключено"). \t \t \t \t \t \t \t $ ('button.select_file.select_single') атр ("отключено", "отключено"). \t \t \t \t \t \t \t $ ('button.select_file.select_multiple') атр ("отключено", "отключено"). – user3594130