2012-11-30 15 views
5

के साथ संभावित डुप्लिकेट चुनें प्राप्त करें:एकाधिक फ़ाइल के सभी मानों jQuery

<input type="file" name="file1" multiple="multiple" /> 

jQuery में इस का उपयोग करते हुए:
Retrieving file names out of a multi-file upload control with javascript

इस समझे

$("input[name=file1]").change(function() { 
    $("input[name=file]").val($("input[name=file1]").val()); 
}); 

अब मेरी समस्या यह है: यह केवल पहली चयनित फ़ाइल देता है, मैं उन्हें सब कुछ लेना चाहता हूं ... यह कैसे करें? धन्यवाद!

+1

बनाओ @bvl यकीन क्लिक करें यहाँ एक jQuery संस्करण यदि आप चाहें तो है सही उत्तर के बगल में चेकमार्क, या अंत में लोग आपकी मदद करना बंद कर देंगे। भौंकने वाला नहीं, बस सूचित करना :) – TNCodeMonkey

उत्तर

18

गिनती बढ़ रही है हालांकि मैं टिप्पणी में एक संभव शिकार से जुड़ा हुआ है, यह है एक शुद्ध जावास्क्रिप्ट समाधान। jsFiddle example

$("input[name=file1]").change(function() { 
    var names = []; 
    for (var i = 0; i < $(this).get(0).files.length; ++i) { 
     names.push($(this).get(0).files[i].name); 
    } 
    $("input[name=file]").val(names); 
});​ 
0

उपयोग .length(), फ़ाइलों की संख्या प्राप्त करने के लिए तो थोड़ी देर के बयान का उपयोग सभी फ़ाइलों के लिए भी ऐसा ही करने के लिए 1 से हर बार :)

+0

मुझे यकीन नहीं है कि मुझे यह सही मिला है। इसलिए मुझे '$ (" इनपुट [name = file1] ") का उपयोग करना चाहिए। लंबाई'? यह मुझे आउटपुट के रूप में 1 भी देता है। –

+0

हां, तो उदाहरण के लिए i = 0; जबकि (i <= $ ("इनपुट [name = file1]") लंबाई। { // प्रत्येक फ़ाइल i ++ के साथ क्या करना है; } –

1

आप फ़ाइलों की संपत्ति है, जो एक filelist रिटर्न के लिए देख रहे हैं:

var ele = document.getElementById($(this).attr('id')); 
var result = ele.files; 

Here is the Fiddle for it

संबंधित मुद्दे