पहले शीर्ष टैग में जोड़ें :
<script>
function showDialog(openFileDialog) {
document.getElementById(openFileDialog).click();
}
function fileName(openFileDialog) {
return document.getElementById(openFileDialog).value;
}
function hasFile(openFileDialog) {
return document.getElementById(openFileDialog).value != "";
}
function fileNameWithoutFakePath(openFileDialog) {
var fileName = document.getElementById(openFileDialog).value;
return fileName.substr(fileName.lastIndexOf('\\') + 1);
}
function fakePathWithoutFileName(openFileDialog) {
var fileName = document.getElementById(openFileDialog).value;
return fileName.substr(0, fileName.lastIndexOf('\\'));
}
</script>
यदि आपके पास पहले से ही स्क्रिप्ट टैग हैं, तो बस इन कार्यों को ऊपर जोड़ें।
आपके शरीर या प्रपत्र टैग जोड़ने में:
<input type="file" style="display:none" id="yourDesiredOrFavoriteNameForTheNewOpenFileDialogInstance"/>
आपके html में कोई फर्क नहीं पड़ता, बस यह है कि आपने वैश्विक चर के रूप में OpenFileDialog वर्ग का एक नया उदाहरण बनाया है , जिसका नाम तत्व की आईडी है, भले ही आपके कोड या xaml में कोई फर्क नहीं पड़ता, लेकिन आपकी स्क्रिप्ट या कोड में , आप उसका नाम नहीं लिख सकते हैं , और फिर एक संपत्ति पढ़ सकते हैं या एक फ़ंक्शन को कॉल कर सकते हैं, क्योंकि वैश्विक कार्य हैं जो उन तत्वों को करते हैं जो तत्व इनपुट प्रकार = "फ़ाइल" में परिभाषित नहीं हैं। आपको बस इन फ़ंक्शंस को छिपे इनपुट प्रकार = "फ़ाइल" की आईडी देनी होगी, जो कि स्ट्रिंग के दौरान OpenFileDialog उदाहरण का नाम है।
अपने HTML में खुली फ़ाइल संवाद बनाने के लिए अपने जीवन को आसान बनाने के लिए, आप एक ऐसा कार्य कर सकते हैं जो यह करता है:
function createAndAddNewOpenFileDialog(name) {
document.getElementById("yourBodyOrFormId").innerHtml += "<input type='file' style='display:none' id='" + name + "'/>"
}
और यदि आप खुले फ़ाइल संवाद को हटाना चाहते हैं, तो आप निम्न फ़ंक्शन बना और उपयोग कर सकते हैं:
function removeOpenFileDialog(name) {
var html = document.getElementById("yourBodyOrFormId").innerHtml;
html = html.replace("<input type='file' style='display:none' id='" + name + "'/>", "");
document.getElementById("yourBodyOrFormId").innerHtml = html;
}
लेकिन इससे पहले कि आप खुले फ़ाइल संवाद को हटा दें, सुनिश्चित करें कि यह निम्नलिखित फ़ंक्शन को बनाकर और उपयोग करके मौजूद है:
function doesOpenFileDialogExist(name) {
return document.getElementById("yourBodyOrFormId").innerHtml.indexOf("<input type='file' style='display:none' id='" + name + "'/>") != -1
}
और यदि आप बना सकते हैं और में खुले फ़ाइल संवाद जोड़ने के लिए नहीं करना चाहती शरीर या प्रपत्र html में टैग, इस वजह से छिपा इनपुट प्रकार = "फाइल" जोड़ रहा है है, तो आप इसके लिपि में ऊपर समारोह बनाने का उपयोग कर सकते :
function yourBodyOrFormId_onload() {
createAndAddNewOpenFileDialog("openFileDialog1");
createAndAddNewOpenFileDialog("openFileDialog2");
createAndAddNewOpenFileDialog("openFileDialog3");
createAndAddNewOpenFileDialog("File Upload");
createAndAddNewOpenFileDialog("Image Upload");
createAndAddNewOpenFileDialog("bla");
//etc and rest of your code
}
सुनिश्चित करें कि आपके शरीर या प्रपत्र टैग के पास, आपने जोड़ा:
onload="yourBodyOrFormId_onload()"
यदि आपने पहले ही यह कर दिया है, तो आपको इस पंक्ति को करने की आवश्यकता नहीं है।
सुझाव: आप अपनी परियोजना या वेबसाइट नई JScript फ़ाइल में जोड़ सकते हैं, अगर आपके पास अभी तक नहीं है, और इस फ़ाइल में आप स्क्रिप्ट टैग और HTML या वेब फॉर्म पेज से सभी खुले फ़ाइल संवाद कार्यों को दूर रख सकते हैं , और उपयोग कर सकते हैं उन्हें इस JScript फ़ाइल से आपके html या वेब फॉर्म पेज में, लेकिन html या वेब फॉर्म पेज को JScript फाइल से लिंक करने से पहले मत भूलना। आप इसे केवल JScript फ़ाइल को अपने html पृष्ठ पर सिर में खींच कर कर सकते हैंटैग। यदि आपका पृष्ठ वेब फ़ॉर्म है और सरल HTML नहीं है, और आपके पास हेड टैग नहीं हैं, तो इसे कहीं भी रख दें ताकि यह काम कर सके। उस JScript फ़ाइल में वैश्विक चर को परिभाषित करने के लिए मत भूलना, जिसका मूल्य आपके शरीर या स्ट्रिंग के रूप में आईडी होगा। आपके द्वारा JScript फ़ाइल को अपने html या वेब फॉर्म पेज से लिंक करने के बाद, आप अपने बॉडी फॉर्म की घटना को लोड कर सकते हैं, उस वैरिएबल का मान अपने शरीर या फॉर्म आईडी में सेट कर सकते हैं। फिर JScript फ़ाइल में, आपको दस्तावेज़ को किसी एक पृष्ठ या किसी पृष्ठ के रूप में नहीं देना है, बस उसे उस चर का मान देना है। आप उस चर bodyId या formId या bodyOrFormId या किसी भी अन्य नाम से कॉल कर सकते हैं जिसे आप चाहते हैं।
भाग्य तुम्हारा साथ दे दोस्त!