JQuery File Upload: Как, при использовании только basic plugin, сделать отправку файлов по клику на кнопку?
При использовании только basic plugin можно сразу же отправлять файл на сервер
add: function (e, data) {
…
data.submit();
},
Но хочется сделать сначала добавление в очередь и уже потом, по клику на сабмит, отправить файлы на сервер. Для этого сначала нужно убрать data.submit() из фунции add. А вот дальше застопорился. В примерах на гитхабе примеры для старой версии плагина.
Расковырял исходники плагина подробней, в них вообще нет даже намёка на очередь. А в примере blueimp.github.com/jQuery-File-Upload/ кликая на кнопку «Start upload» скрипт просто поочередно кликает на кнопки «Start» :)
Без UI я обошёлся так: задал глобальную массив files и при вызове метода add сохраняю data в files, а при клике на кнопку загрузки пробегаюсь по массиву и вызываю files[key].submit()
Надо сделать отложенный вызов, сохранив контекст. Как сохранить контекст (data, this, включая отправляемый файл и что там ещё нужно) — отдельный вопрос.
$.when( doAjax(), doMoreAjax() )
.then(function(){
console.log( 'I fire once BOTH ajax requests have completed!' );
})
.fail(function(){
console.log( 'I fire if one or more requests failed.' );
});