Heim > Web-Frontend > js-Tutorial > Wie lege ich Dateieingabewerte nach Drag-and-Drop programmgesteuert fest?

Wie lege ich Dateieingabewerte nach Drag-and-Drop programmgesteuert fest?

DDD
Freigeben: 2024-12-03 13:03:12
Original
382 Leute haben es durchsucht

How to Programmatically Set File Input Values After Drag-and-Drop?

Dateieingabewert beim Seitenablegen festlegen

Hintergrund

Sie arbeiten an einem Steuerelement, das die Dateiauswahl und -übermittlung ermöglicht durch Absturz in einen dafür vorgesehenen Bereich. Sie bemerken jedoch, dass die Dateieingabe leer bleibt, bis das Formular manuell übermittelt wird.

Lösung: Dateiobjekt über JavaScript festlegen

Glücklicherweise ermöglichen moderne Browser jetzt programmgesteuerte Einstellungen von Eingabedateien mithilfe der Dateieigenschaft. So können Sie es mithilfe der Datenübertragung implementieren:

let target = document.documentElement;
let fileInput = document.querySelector('input');

target.addEventListener('drop', (e) => {
  e.preventDefault();
  fileInput.files = e.dataTransfer.files;
});
Nach dem Login kopieren

Alternative Methode: FileList

Sie können den Dateieingabewert auch über ein FileList-Objekt festlegen:

let fileInput = document.querySelector('input');

fileInput.files = [file1, file2, ...];
Nach dem Login kopieren

Haftungsausschluss

Die Möglichkeit, Eingaben festzulegen Dateiwerte hängen von der Datenübertragung oder der Verfügbarkeit von FileList-Objekten ab. Mit dieser Funktion verbundene ältere Sicherheitsrisiken wurden in modernen Browsern behoben.

Beispiel

Eine Demonstration finden Sie im bereitgestellten Code-Snippet unten:


let fileInput = document.querySelector('input');</p><p>target.addEventListener('drop', (e) => {<br> e.preventDefault();<br> fileInput.files = e.dataTransfer.files;<br>});


Das obige ist der detaillierte Inhalt vonWie lege ich Dateieingabewerte nach Drag-and-Drop programmgesteuert fest?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage