Das Beispiel in diesem Artikel zeigt, wie JavaScript den Datei-Upload-Typ bestimmt, was eine sehr verbreitete Technik ist. Die spezifische Implementierungsmethode lautet wie folgt:
Beim Hochladen von Dateien kommt eine Funktion zum Einsatz, die über den Input-Tag des HTML-Elements implementiert wird:
<input id="imageFile" name="imageFile1" accept="image/jpg,image/jpeg,image/png,image/bmp,image/gif" type="file" title="点击选择文件" onchange="imageSubmit(this,0);"/>
Nach der Auswahl des Bildes wird das Onchange-Ereignis sofort ausgelöst, um das Bild hochzuladen. Die wiederholte Auswahl desselben Bildes löst jedoch nicht das Onchange-Ereignis aus:
function imageSubmit(obj, imageType) { if (imageType == "0") { //相关处理代码... //解决上传相同图片不触发onchange事件 var nf = obj.cloneNode(true); nf.value=''; obj.parentNode.replaceChild(nf, obj); } }
cloneNode() wird verwendet, um eine identische Kopie des aufrufenden Knotens zu erstellen. Der Parameter true bedeutet, dass eine tiefe Kopie durchgeführt wird, d. h. der Knoten und der gesamte untergeordnete Knotenbaum werden kopiert Es wird eine Kopie durchgeführt, d. h. nur der Knoten selbst wird kopiert. Die nach dem Kopieren zurückgegebene Kopie des Knotens ist Eigentum des Dokuments, ihr ist jedoch kein übergeordneter Knoten zugewiesen. Daher wird die Knotenkopie zu einer „Waise“, sofern sie nicht über appendChild(), insertBefore() oder replaceChild() zum Dokument hinzugefügt wird.
Ich hoffe, dieser Artikel hilft Ihnen dabei, JavaScript zum Entwerfen von Webprogrammen zu verwenden.