HTML-Eingabedatei-Auswahlereignis wird nicht ausgelöst, wenn dieselbe Datei ausgewählt wird
Gibt es eine chance, zu erkennen, jede Datei, die Auswahl der Benutzer für eine HTML - input
Typ file
element?
Diese wurde schon oft gefragt, aber die in der Regel vorgeschlagen onchange
- Ereignis nicht ausgelöst, wenn der Benutzer wählen Sie die gleiche Datei erneut.
Kommentar zu dem Problem
Würde dein code dann auch feuern, wenn der Nutzer auf Abbrechen dann? Man erwartet, dass klicken auf Abbrechen wird nichts tun, und ich denke, die meisten Benutzer würde erwarten, dass die erneute Auswahl der gleichen Datei hätte den gleichen Effekt, wie Abbrechen. Ich weiß nicht, ob dies möglich ist oder nicht, aber ich schlage vor, Sie überdenken, das design sowieso.
Sie auf Abbrechen, sollte es nicht Feuer zu machen oder anderweitig nachweisbar sind. Es ist mehr gemeint zum entfernen eines UI-ceveat: Wenn eine Aktion aufgerufen wird, nachdem die Datei gewählt, wird der Benutzer in der Regel erwarten, dass die Aktion zu wiederholen, wenn er sich die Datei wieder.
Vielleicht können wir dieses Verhalten, wenn wir die
input
s Wert ", wenn etwas mit der Datei. Aber das wäre zu entfernen, die sichtbar mit dem Namen auch. Aber, dass kann ok sein, wie die Datei tatsächlich verarbeitet und das Ergebnis dieser Aktion kann scheinen woanders. Plz Erklären, Que, Was Sie tun möchten?
InformationsquelleAutor der Frage dronus | 2012-08-19
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den Wert der
input
zunull
auf jedenonclick
Veranstaltung. Damit setzt dieinput
's Wert und lösen dieonchange
Ereignis, auch wenn Sie den gleichen Pfad ausgewählt.Hier ein DEMO.
Hinweis: Es ist normal, wenn Sie Ihre Datei mit dem Präfix 'C:\fakepath\'. Das ist eine Sicherheitsfunktion, die verhindert JavaScript aus dem wissen, dass die Datei den absoluten Pfad. Der browser weiß es innerlich.
InformationsquelleAutor der Antwort Brian Ustas
this.value=null;
ist nur notwendig für Chrome, Firefox funktioniert nur mitreturn false;
Hier ist ein FIDDLE
InformationsquelleAutor der Antwort elshnkhll
In diesem Artikel, unter dem Titel "die Verwendung von Formular-Eingabe für die Auswahl der"
http://www.html5rocks.com/en/tutorials/file/dndfiles/
Es fügt einen Ereignis-listener auf "ändern", aber getestet habe ich es und es löst sogar, wenn Sie die gleiche Datei, und nicht, wenn Sie Abbrechen.
InformationsquelleAutor der Antwort Xacur Aphrantus