Ajoutez d'abord les balises head :
<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>
si vous avez déjà des balises de script , ajoutez simplement ces fonctions ci-dessus.
Dans votre corps ou votre formulaire, ajoutez des balises:
<input type="file" style="display:none" id="yourDesiredOrFavoriteNameForTheNewOpenFileDialogInstance"/>
Peu importe où dans votre html, c'est comme si vous avez créé une nouvelle instance de type classe OpenFileDialog en tant que variable globale , dont le nom est l' id de l'élément, peu importe où dans votre code ou xaml, mais dans votre script ou code , vous ne pouvez pas taper son nom, puis lire une propriété ou appeler une fonction, car il existe des fonctions globales qui font celles qui ne sont pas définies dans l'élément input type = "file". Il vous suffit de donner à ces fonctions l'identifiant de l'entrée masquée type = "file" qui est le nom de l'instance OpenFileDialog sous forme de chaîne.
Pour vous faciliter la vie dans la création d'instances de dialogues de fichiers ouverts dans votre html, vous pouvez créer une fonction qui le fait:
function createAndAddNewOpenFileDialog(name) {
document.getElementById("yourBodyOrFormId").innerHtml += "<input type='file' style='display:none' id='" + name + "'/>"
}
et si vous souhaitez supprimer la boîte de dialogue de fichier ouvert, vous pouvez créer et utiliser la fonction suivante:
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;
}
mais avant de supprimer la boîte de dialogue d'ouverture de fichier, assurez-vous qu'elle existe en créant et en utilisant la fonction suivante:
function doesOpenFileDialogExist(name) {
return document.getElementById("yourBodyOrFormId").innerHtml.indexOf("<input type='file' style='display:none' id='" + name + "'/>") != -1
}
et si vous ne voulez pas créer et ajouter les boîtes de dialogue de fichier ouvert dans le corps ou les balises de formulaire dans le html, car il s'agit d'ajouter des entrées masquées type = "file" s, vous pouvez le faire dans le script en utilisant la fonction de création ci-dessus :
function yourBodyOrFormId_onload() {
createAndAddNewOpenFileDialog("openFileDialog1");
createAndAddNewOpenFileDialog("openFileDialog2");
createAndAddNewOpenFileDialog("openFileDialog3");
createAndAddNewOpenFileDialog("File Upload");
createAndAddNewOpenFileDialog("Image Upload");
createAndAddNewOpenFileDialog("bla");
//etc and rest of your code
}
Assurez-vous que près de votre corps ou des balises de formulaire, vous avez ajouté:
onload="yourBodyOrFormId_onload()"
Vous n'avez pas à faire cette ligne ci-dessus, si vous l'avez déjà fait.
CONSEIL: Vous pouvez ajouter à votre projet ou site Web un nouveau fichier JScript, si vous ne l'avez pas encore fait, et dans ce fichier, vous pouvez mettre toutes les fonctions de dialogue de fichier ouvert à l'écart des balises de script et de la page HTML ou du formulaire Web, et utiliser les dans votre page de formulaire html ou Web à partir de ce fichier JScript, mais n'oubliez pas avant de lier la page de formulaire html ou Web au fichier JScript bien sûr. Vous pouvez le faire simplement en faisant glisser le fichier JScript sur votre page html dans la têteMots clés. Si votre page est un formulaire Web et non un simple HTML, et que vous n'avez pas de balises head, placez-la n'importe où pour qu'elle fonctionne. N'oubliez pas de définir la variable globale dans ce fichier JScript, dont la valeur sera votre corps ou l'identifiant de formulaire sous forme de chaîne. Après avoir lié le fichier JScript à votre page de formulaire html ou Web, vous pouvez charger l'événement de votre corps de formulaire, définir la valeur de cette variable sur votre corps ou votre identifiant de formulaire. Ensuite, dans le fichier JScript, vous n'avez plus à donner au document l'identifiant du corps ou de la forme d'une page, donnez-lui simplement la valeur de cette variable. Vous pouvez appeler cette variable bodyId ou formId ou bodyOrFormId ou tout autre nom de votre choix .
Bonne chance, mec!