Comment effacer le contenu d’une balise INPUT FILE dans Internet Explorer
Bonjour à tous,
je vous écris car je viens de passer quelques heures d’essais et de recherches à effacer le contenu d’une balise INPUT FILE dans le cher navigateur Internet Explorer (IE).
Ce qui prend une ligne de code javascript pour Firefox en prend au final quatre pour IE. Par soucis de sécurité, le navigateur de Microsoft ne permet pas de réinitialiser le champ INPUT de type FILE avec la ligne suivante :
document.getElementById(« input_file »).value = « »; (ligne pour Firefox)
Mais il faut ruser pour que cela fonctionne :
// dupliquer dynamiquement le noeud INPUT FILE
var input = document.getElementById(« input_file »).cloneNode(true);
// réinitialiser la valeur
input.setAttribute(« value », « »);
// vider le contenu « container » de la balise
document.getElementById(« container »).innerHTML = « »;
// Ajouter le noeud cloné à la place de l’ancien
document.getElementById(« container »).appendChild(input);
Et la vous disposer maintenant d’un champ tout beau tout neuf.
Bonne programmation à tous.
