.val ('') के साथ मान सेट करने का प्रयास सुरक्षा कारणों से कुछ ब्राउज़रों (जैसे आईई) में विफल हो जाएगा।
आपका सबसे अच्छा विकल्प
रूप पुनर्स्थापित करने के लिए है:
$('form').trigger('reset');
या मामूली संशोधन के साथ, आपका प्लेसमेंट कोड का उपयोग करने (यह सुनिश्चित करते एचटीएमएल वैध):
$('#fileUpload1').replaceWith('<input id="fileUpload1" type="file" style="width:275px; position:absolute; left:1px"/>');
आप तो सीएसएस के साथ बॉक्स शैली, आपका कोड भी आसान हो जाता है।
सीएसएस:
#fileUpload1 {
width: 275px;
position: absolute;
left: 1px;
}
जावास्क्रिप्ट:
$('#fileUpload1').replaceWith('<input id="fileUpload1" type="file"/>');
एक और अधिक उन्नत विकल्प फाइल अपलोड बॉक्स, जब पेज लोड को छिपाने के लिए है, तो इसके बारे में एक क्लोन बनाने जो उपयोगकर्ता को दिखाया जाता है। जब आपको इसे साफ़ करने की आवश्यकता होती है, तो आप क्लोन हटाते हैं, फिर मूल छुपाएं फिर से क्लोन करें। यदि आप उपयोगकर्ता को एक से अधिक फाइल अपलोड करने की अनुमति देना चाहते हैं तो यह विधि आपको इनपुट बॉक्स की कई प्रतियां भी करने की अनुमति देती है। मैं आपके लिए कार्यान्वयन विवरण छोड़ दूंगा। ;)
स्रोत
2012-08-08 15:08:23
संभावित डुप्लिकेट: http://stackoverflow.com/q/1043957/663604 –
मैं उस उत्तर का उपयोग करता हूं लेकिन वास्तव में कोई उत्तराधिकारी नहीं है। – anmarti