Показать сообщение отдельно
  #5 (permalink)  
Старый 10.01.2015, 01:56
Аватар для Sanu0074
Аспирант
Отправить личное сообщение для Sanu0074 Посмотреть профиль Найти все сообщения от Sanu0074
 
Регистрация: 16.12.2012
Сообщений: 80

Сообщение от danik.js Посмотреть сообщение
А нафиг оно надо? Лучше разом отправить - быстрее будет.
такая задумка)

собственно набодяжил решение, главное работает)
if(sel.length>0){
                    console.log('Saved files, total fields: '+sel.length);
                    
                    
                    function sendFile(fd){
                        $.element.stateUpload = true;
                        
                        $.ajax({
                            type: 'POST',
                            url: HOST+'element/uploadFile',
                            data: fd,
                            processData: false,
                            contentType: false,
                            success: function(data) {
                                $.element.stateUpload = false;
                                console.log(data);

                            },
                            error: function(data) {
                                $.element.stateUpload = false;
                                console.log(data);
                            
                            }
                        });
                    }
                    
                    var obFD = [];   
                    
                    $.each(sel,function(){  
                        var fd = new FormData();
                            fd.append('elementID', data.elementID);
                            fd.append('type',$(this).data('file'));
                            var file = $(this)[0].files[0];
                            if($(this).hasAttr('multiple')){
                                var input = document.querySelector('[data-file="'+$(this).data('file')+'"]').files;
                                for (var i = 0; i < input.length; i++){
                                    var fd = new FormData();
                                        fd.append('elementID', data.elementID);
                                        fd.append('type',$(this).data('file'));
                                        fd.append('file',input[i]);
                                        obFD.push(fd);
                                }
                            }else{
                                fd.append('file', file);
                                obFD.push(fd);
                            }
                    });
                    
                    var i = 0;
                    var t = setInterval(function(){
                        if(!$.element.stateUpload){
                            sendFile(obFD[i]);
                            i++;
                        }
                        if(i==obFD.length){
                            clearInterval(t);
                            $.wnd.close(true);
                            $.sysMsg.showOk(data.msg);
                            return;
                        }
                    },1000);
                    
                    return;
                }
Ответить с цитированием