PDA

View Full Version : نمایش درصد فایل آپلود شده در آپلود فایل با جی کوئری



alireza.tabesh
پنج شنبه 26 شهریور 1394, 19:13 عصر
سلام
من دارم یک فایل رو بصورت درگ اند دراپ آپلود میکنم و موردی که نیاز دارم اینکه در هر مرحله درصد فایل آپلود شده رو نمایش بدم
ممنون میشم راهنمایی کنید

alireza.tabesh
یک شنبه 29 شهریور 1394, 21:17 عصر
اینجوری درست میشه عزیزانم

function progress(e) {
if (e.lengthComputable) {
var max = e.total;
var current = e.loaded;


var percentage = (current * 100) / max;
console.log(percentage);




if (percentage >= 100) {
console.log('process completed');
}
}
}


$('#drag-target-selector').on('dragenter', function(e) {
e.stopPropagation();
e.preventDefault();
$(this).css('border', '2px solid #0B85A1');
});


$('#drag-target-selector').on('dragover', function(e) {
e.stopPropagation();
e.preventDefault();
});


$('#drag-target-selector').on('drop', function(e) {
$(this).css('border', '2px dotted #0B85A1');
e.preventDefault();
var files = e.originalEvent.dataTransfer.files;


var frmData = new FormData();
for (var i = 0; i < files.length; i++) {
frmData.append("file[" + i + "]", files[i]);
}


$.ajax({
url: '@Url.Action("UploadFile")',
type: 'post',
data: frmData,
contentType: false,
processData: false,
success: function(rdata) {
console.log('result =' + rdata);
},
xhr: function() {
var myXhr = $.ajaxSettings.xhr();
if (myXhr.upload) {
myXhr.upload.addEventListener('progress', progress, false);
}
return myXhr;
}
});
});

احمد سامعی
پنج شنبه 22 مهر 1395, 10:11 صبح
سلام
اگر امکانش هست کدهای کامل این آپلود کردن را بزارید تا دیگر همکاران نیز استفاده کنند

با تشکر

barzin144
پنج شنبه 22 مهر 1395, 11:13 صبح
من از این کد استفاده کردم





FileSizeByte = file.size;
var fd = new FormData();
fd.append("uploadfile", file);
ajaxfileuploadpro = $.ajax({
xhr: function () {
var xhr = new XMLHttpRequest();


xhr.upload.addEventListener("progress", function (evt) {
var UploadedByte = evt.loaded;
var loaded = (UploadedByte / FileSizeByte) * 100; // percent
if (loaded > 100) {
loaded = 100;
}


if (FileSizeByte < UploadedByte) {
UploadedByte = FileSizeByte;
}
var BytesPerSecond = ElapsedSecond ? UploadedByte / ElapsedSecond : 0;
var RemainingBytes = FileSizeByte - UploadedByte;
var SecondsRemaining = ElapsedSecond ? RemainingBytes / BytesPerSecond : 0;


}, false);