के साथ प्रोग्रामेटिक रूप से फ़ाइलों को हटाएं मैं बहुआयामी अपलोड को लागू करने के लिए ब्लूंप फ़ाइल अपलोड प्लगइन (मूल संस्करण) का उपयोग कर रहा हूं। मैं अपलोड करने के लिए कतारबद्ध फ़ाइलों को हटाने की अनुमति देने के लिए कार्यक्षमता को कार्यान्वित करने की कोशिश कर रहा हूं। मैं यह नहीं समझ सकता कि फाइल सरणी को उचित तरीके से कैसे एक्सेस किया जाए। प्रत्येक बार कॉलबैक में, इंडेक्स 0 है और फाइल सरणी लंबाई 1 है (इसमें केवल उस फ़ाइल को शामिल किया गया है जिसे उपयोगकर्ता को निकालने के लिए क्लिक किया गया है)। मैं एक div को कतारबद्ध प्रत्येक फ़ाइल के लिए एक लिंक जोड़ रहा हूं, जो क्लिक करने योग्य है और क्लिक किए जाने पर फ़ाइल को हटा देना चाहिए।jquery fileupload मूल
मेरा विचार था कि फ़ाइल के इंडेक्स के साथ एक निकास लिंक बनाना और सरणी से इसे हटा देना था, लेकिन ऊपर बताई गई समस्या के कारण, सूचकांक कभी सही नहीं होता है। मैंने फ़ाइल नाम से भी कोशिश की है, लेकिन "ऑन" कॉलबैक में फ़ाइल नाम हमेशा पहली फ़ाइल है जिसे अपलोड के लिए चुना गया था - कुछ क्लोजर स्कोपिंग मुझे पता लगाना है।
मैं अपलोड कतार से फ़ाइलों को प्रोग्रामेटिक रूप से कैसे हटा सकता हूं?
HTML:
<div id="fileBrowserWrapper">
<form id="myForm" action="#" method="post" enctype="multipart/form-data">
<input id="uploadDocBrowse" type="file" name="files[]" multiple/>
</form>
</div>
<div id="inputFilesBox"></div>
<div id="uploadFilesBox"></div>
और फ़ाइल जावास्क्रिप्ट अपलोड करें:
$('#myForm').fileupload({
url: "/SomeHandler",
dataType: 'html',
autoUpload: false,
singleFileUploads: false,
replaceFileInput: false,
add: function (e, data) {
console.log("Number of files: " + data.files.length);
$.each(data.files, function (index, file) {
$('#uploadFilesBox').append("<div class='uploadBox' id='fileDiv_" + file.name + "'><div class='leftEle'><a href='#' id='link_" + index + "' class='removeFile'>Remove</a></div><div class='midEle'>" + file.name + "</div></div>")
.on('click', { filename: file.name, files: data.files }, function(event) {
var uploadFilesBox = $("#uploadFilesBox");
var remDiv = $("#fileDiv_" + event.data.filename);
remDiv.remove();
event.data.files.splice(0, 1);
}
});
});
data.context = $('#myButton')
.click(function() {
data.submit();
});
});
मैंने इसे हल किया, कृपया मेरे मूल प्रश्न के शीर्ष को देखें। – Furynation
कृपया अपना समाधान उत्तर के रूप में पोस्ट करें। यही वह जगह है जहां भावी पाठक समाधान की तलाश करेंगे। सवाल में इसे शामिल करने से ज्यादातर भ्रमित लग रहा है। धन्यवाद! :) –
मुझे 8 घंटे तक इंतजार करना है जब तक कि मैं अपने प्रश्न का उत्तर नहीं दे सकता :) – Furynation