दिलचस्प पोस्ट
खिड़की.ओलोड बनाम दस्तावेज़। ओलोड सी # का उपयोग कर एक एनटीपी सर्वर की क्वेरी कैसे करें? java.util.zip.ZipException: डुप्लिकेट प्रविष्टि MVVM: ट्यूटोरियल शुरू से खत्म करने के लिए? .NET अपवाद कितना धीमा है? विंडोज 7 पर पायथन पथ जोड़ना मौजूदा टैब बंद करें R.exe, Rcmd.exe, Rscript.exe और Rterm.exe: अंतर क्या है? पोर्टरडाफ.मॉड का एंड्रॉइड ग्राफिक्स में क्या मतलब है। यह क्या करता है? रेल त्रुटि, YAML को पार्स नहीं कर सका अपवाद नहीं फेंक दिए जाने पर ब्लॉक / प्रदर्शन को रोकने के प्रयास करें? कम से कम 1 नंबर और 1 वर्ण के साथ अल्फ़ान्यूमेरिक के लिए रेगेक्स क्या उनके मूल तत्व के नीचे छद्म तत्वों के ढेर क्रम को सेट करना संभव है? ब्राउज़र बैक बटन इवेंट का पता लगाने के लिए – क्रॉस ब्राउज़र JQuery, स्प्रिंग एमवीसी @ अनुरोध बॉडी और जेएसओएन – यह एक साथ काम करता है

सरणी जावास्क्रिप्ट / jquery के लिए इनपुट फ़ाइल

मेरे पास एक इनपुट टाइप फाइल है जहां मैं जावास्क्रिप्ट में वेरिएबल में डाल दिया जहां मैं फ़ाइलों को हेरफेर करना चाहता हूं

HTML:

<input class="file" id="file1" name="uploadedimages[]" type='file' multiple/> 

जावास्क्रिप्ट:

 var upload = document.getElementById('file1'); upload.files.splice(idtoremove,1) //not working 

अपलोड वैरिएबल में मैं एक विशिष्ट आइटम को कैसे हटा सकता हूं? मुझे पता है कि इनपुट टाइप फ़ाइल केवल पढ़ने के लिए है और जब तक आप इसे सरणी में नहीं डालते हैं और एजेक्स के साथ फाइल अपलोड करते हैं

मेरे गैलरी में अपलोड करने के लिए यह कर रही IM पहले मैं कई छवियों का चयन करें तो अपलोड करने से पहले तस्वीरों के लिए पहले एक पूर्वावलोकन होगा। वहाँ एक तस्वीर को हटाने का एक विकल्प भी होगा मेरी समस्या है इनपुट फ़ाइल में मैं उस फोटो फ़ाइल को कैसे हटा सकता हूं तो संभावित समाधान इनपुट फ़ाइल को सरणी में संग्रहित करना है, फिर आप सरणी में जो फोटो चाहते हैं, उसे हटाएं, सरणी के लिए एक फ़ॉर्मेट बनाएं और एजेक्स का उपयोग करके अपलोड करें

वेब के समाधान से एकत्रित समाधान "सरणी जावास्क्रिप्ट / jquery के लिए इनपुट फ़ाइल"

संपादित करें, अपडेट किया गया

अपलोड वैरिएबल में मैं एक विशिष्ट आइटम कैसे हटा सकता हूं?

यदि अपेक्षित परिणाम फ़ाइल ऑब्जेक्ट्स की सरणी है, तो मूल files ऑब्जेक्ट से splicing array आइटम के लिए दृष्टिकोण समायोजित होगा – और अपलोड के रूप में spliced ​​array को भेजना – मूल files ऑब्जेक्ट से "डिलीट" आइटम की कोशिश करने और अभी भी मूल files ऑब्जेक्ट अपलोड करने के बजाय।


FileList ऑब्जेक्ट नहीं है .splice() विधि files को Array कनवर्ट files लिए। .slice() , .slice() का उपयोग करने की कोशिश करें, फिर File ऑब्जेक्ट की सरणी पर .splice() विधि को कॉल करें, उदा।

 // `_files` : `File` object items from original `files` `FileList` // call `.splice()` on items that would be uploaded , // upload `_files` array - _not_ original `files` `FileList` object // eg; `_files`:`File` objects to _keep_ not "delete" from `files` var idstokeep = [0, 2]; // splice , keep first `2` files var _files = Array.prototype.slice.call(files).splice(idstokeep[0], idstokeep[1]); 

देखें कि कैसे array.prototype.slice.call () काम करता है?


वैकल्पिक रूप से, उपयोग करें

आइटम ()

फाइल सूची में निर्दिष्ट सूचकांक में फ़ाइल का प्रतिनिधित्व करने वाला फ़ाइल ऑब्जेक्ट देता है।

फाइल index में विशिष्ट index में फाइलों को वापस करने के लिए

  var files = e.target.files; // return `file` at `index` `1` var firstFile = files.item(1); 

 var upload = document.getElementById("file1"); upload.onchange = function(e) { var files = e.target.files; // https://developer.mozilla.org/en-US/docs/Web/API/FileList#item var firstFile = files.item(1); var idstokeep = [0, 2]; // keep first `2` files from `multiple` selection var _files = Array.prototype.slice.call(files).splice(idstokeep[0], idstokeep[1]); console.log(files, files.length , _files, _files.length , firstFile); }; 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"> </script> <input class="file" id="file1" name="uploadedimages[]" type='file' multiple/> 
 var upload = document.getElementById("file1"); upload.onchange = function(e) { var files = e.target.files; // https://developer.mozilla.org/en-US/docs/Web/API/FileList#item var firstFile = files.item(1); var idstokeep = [0, 2]; // keep first `2` files from `multiple` selection var _files = Array.prototype.slice.call(files).splice(idstokeep[0], idstokeep[1]); console.log(files, files.length , _files, _files.length , firstFile); }; 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"> </script> <input class="file" id="file1" name="uploadedimages[]" type='file' multiple/>