2012-12-27 8 views
7

Jak utworzyć pasek postępu dla każdego pliku przy użyciu funkcji przesyłania plików jQuery (Blueimp http://goo.gl/y1Y2b)? Mam wiele formularzy, a każdy formularz ma przycisk przesyłania.Pasek postępu przesyłania pliku Blueimp/Jquery dla każdego pliku

$('.fileupload').fileupload({ 
dataType: 'json', 
add: function (e, data) { 
    var formContainer = $($(this).parent()).parent(); 
    var file = data.files[0]; 
    var li = $('<li/>').attr("id", 'li-upload-'+file.id).appendTo($(formContainer).children('.ul-files')); 
    var link= $('<a/>').attr("href", '#').attr("data-href", file.delete_url).addClass("link-remove-file pull-right").attr("target", "_parent").attr("title", "Remove").appendTo(li); 
    var ico = $('<i/>').addClass('icon-remove').appendTo(link); 
    var spn = $('<span/>').html(file.name+' ('+Math.round(file.size/1024)+' K)').appendTo(li); 
    var lod = $('<div/>').addClass('container-progress-upload').css("float", 'right').appendTo(li); 
    var prg = $('<div/>').addClass('bar').css("width", '0%').attr("id", 'pgr-'+file.name).appendTo(lod); 
    data.submit(); 
}, 
progress: function (e, data) { 
    var file = data.files[0]; 
    var progress = parseInt(data.loaded/data.total * 100, 10); 

    $('#pgr-'+file.name).css(
     'width', 
     50 + '%' 
    ); 
} 
}); 
+0

siedzę u ten sam punkt. Czy możesz się z tym pogodzić? możesz dodać odpowiedź? – coderunner

+0

Robię to: HTML ' ' JS: ' $ (okno) .load (function() { \t 'use strict'; $() FileUpload ({ \t \t dataType: 'json', 'forma-upload.'. \t \t autoUpload: true, \t \t url:. $ ('forma-upload ') attr (' data-url-upload'), \t \t MaxFileSize: 5000000 \t}); ' – Tommy

Odpowiedz

2

No rozwiązać, po prostu to zrobić:

zrobić to: HTML

<form id="frm-resposta-{CODHIST}" class="form-horizontal form-upload" method="post" action="<?php echo site_url('ticket/salvarhistorico');?>" enctype="multipart/form-data" data-url-upload="<?php echo site_url('ticket/postFile');?>"> 
<input class="fileupload" type="file" name="files[]" data-url="<?php echo site_url('ticket/postFile');?>" multiple> 

JS:

$(window).load(function() { 
    'use strict'; 
$('.form-upload').fileupload({ 
     dataType: 'json', 
     autoUpload: true, 
     url: $('.form-upload').attr('data-url-upload'), 
     maxFileSize: 5000000 
    }); 
+0

Dziękujemy za aktualizację! :) – coderunner