resident
یک شنبه 22 آذر 1394, 08:43 صبح
سلام دوستان. روز همگی بخیر و شادی...
من از کد زیر برای آپلود فایل استفاده می کنم. تو فایل زیر میخوام نام المنت selectedFileArray متغیر باشه و خودم بهش پاس بدم و تو کدها هم از همون استفاده کنم. لطفا راهنماییم کنید چطور می تونم این کار رو انجام بدم؟
function SelectedFile(fileName, fileSize, fileContent) {
this.fileName = fileName;
this.fileSize = fileSize;
this.fileContent = fileContent;
this.category = ko.observable("None");
this.title = ko.observable("");
}
function viewModel() {
var self = this;
self.categories = [{ id: 1, name: "نامه" }, { id: 2, name: "سند" }, { id: 3, name: "اسکن" }, { id: 4, name: "پرونده" }];
this.selectedFileArray = ko.observableArray();
self.addFiles = function (files) {
for (var i = 0; i < files.length; i++) {
var f = files[i];
//toastr.success(f.name);
var reader = new FileReader;
reader.onload = (function (curFile) {
return function (e) {
var data = e.target.result;
console.log(curFile.name + " ; size : " + curFile.size);
var fileContent = data;
self.selectedFileArray.push(new SelectedFile(curFile.name,
curFile.size,
fileContent));
};
})(f);
reader.readAsDataURL(f);
};
};
self.removeFile = function (selectedFile) { self.selectedFileArray.remove(selectedFile); };
self.removeAllFiles = function (selectedFile) { self.selectedFileArray.removeAll(); };
self.totalFiles = ko.computed(function () {
return self.selectedFileArray().length;
});
self.totalSize = ko.computed(function () {
var total = 0;
for (var i = 0; i < self.selectedFileArray().length; i++) {
total += self.selectedFileArray()[i].fileSize;
}
return total;
});
}
myViewModel = new viewModel;
ko.applyBindings(myViewModel);
من از کد زیر برای آپلود فایل استفاده می کنم. تو فایل زیر میخوام نام المنت selectedFileArray متغیر باشه و خودم بهش پاس بدم و تو کدها هم از همون استفاده کنم. لطفا راهنماییم کنید چطور می تونم این کار رو انجام بدم؟
function SelectedFile(fileName, fileSize, fileContent) {
this.fileName = fileName;
this.fileSize = fileSize;
this.fileContent = fileContent;
this.category = ko.observable("None");
this.title = ko.observable("");
}
function viewModel() {
var self = this;
self.categories = [{ id: 1, name: "نامه" }, { id: 2, name: "سند" }, { id: 3, name: "اسکن" }, { id: 4, name: "پرونده" }];
this.selectedFileArray = ko.observableArray();
self.addFiles = function (files) {
for (var i = 0; i < files.length; i++) {
var f = files[i];
//toastr.success(f.name);
var reader = new FileReader;
reader.onload = (function (curFile) {
return function (e) {
var data = e.target.result;
console.log(curFile.name + " ; size : " + curFile.size);
var fileContent = data;
self.selectedFileArray.push(new SelectedFile(curFile.name,
curFile.size,
fileContent));
};
})(f);
reader.readAsDataURL(f);
};
};
self.removeFile = function (selectedFile) { self.selectedFileArray.remove(selectedFile); };
self.removeAllFiles = function (selectedFile) { self.selectedFileArray.removeAll(); };
self.totalFiles = ko.computed(function () {
return self.selectedFileArray().length;
});
self.totalSize = ko.computed(function () {
var total = 0;
for (var i = 0; i < self.selectedFileArray().length; i++) {
total += self.selectedFileArray()[i].fileSize;
}
return total;
});
}
myViewModel = new viewModel;
ko.applyBindings(myViewModel);