2011-09-21 10 views
11

मैं jQuery का उपयोग कर अपलोड की गई फ़ाइल का फ़ाइल नाम प्राप्त करना चाहता हूं। लेकिन समस्या, मुझे केवल फ़ाइल नाम के बजाय नकली पथ और फ़ाइल का नाम मिला। यह मेरा रूप है।jQuery का उपयोग कर अपलोड फॉर्म से फ़ाइल नाम कैसे प्राप्त करें?

<form action="" method="post"> 
    <input type="file" name="uploadFile" id="uploadFile" /> 
    <input type="submit" name="submit" value="Upload" id="inputSubmit" /> 
</form> 

और jQuery इस

$(document).ready(function(){ 
    $('#inputSubmit').click(function(){ 
     alert($('#uploadFile').val()); 
    }); 
}); 

मैं क्रोम का उपयोग करें और अलर्ट बॉक्स में यह मिल गया है। मान लें कि मैं filename.jpg नाम की फ़ाइल चुनता हूं।

C:\fakepath\filename.jpg 

मुझे केवल फ़ाइल का नाम कैसे मिल सकता है? आपके सहयोग के लिए धन्यवाद।

उत्तर

7

फ़ाइलपैथ स्ट्रिंग को "\" के साथ विभाजित करें और परिणामी सरणी में अंतिम आइटम का उपयोग करें।

देखें: Getting the last element of a split string array

3

तुम भी कर सकते हैं:

$('#uploadFile').prop("files")['name']; 

यदि यह एक से अधिक फ़ाइल इनपुट है, कार्य करें:

$.each($('#uploadFile').prop("files"), function(k,v){ 
    var filename = v['name']; 

    // filename = "blahblah.jpg", without path 
}); 
+4

पालन कर सकते हैं मुझे लगता है कि इस '$ ('# uploadFile') एकल फ़ाइल के लिए उपयोग करने का उचित तरीका है। सहारा (" फ़ाइलें ") [0] [ ' नाम ']; ' –