/ / Attiva l'input di un file da aprire tramite javascript - javascript, caricamento di file

Attiva un file da aprire tramite javascript - javascript, file-upload

Quindi ho un input, qualcosa del genere:

<input type="file" id="file" />

Voglio che la finestra di dialogo di apertura del file venga visualizzata tramite javascript. Ho provato cose come questa:

$("file").click();

(questo presuppone che io stia usando qualcosa di simileprototype / mootools / jquery). Tuttavia, questo non sembra fare nulla. Posso comunque attivare l'evento click per l'input del file senza che l'utente sia costretto a interagire direttamente con l'input?

risposte:

4 per risposta № 1

Ricordo che questo non è possibile perché è un filecaratteristica di sicurezza. In effetti, sono abbastanza sicuro che il pulsante per la finestra di dialogo di esplorazione dei file non venga nemmeno visualizzato nel DOM (il campo viene visualizzato, ma non il pulsante, che il browser visualizza automaticamente)


3 per risposta № 2
$("file").click()

Funziona (in Chrome 8). Devi solo assicurarti che non sia impostato per visualizzare: nessuno;

Una soluzione semplice è posizionarlo in modo assoluto e quindi impostare a sinistra qualcosa come -1000px.


3 per risposta № 3

Per quanto ne so, l'apertura della finestra di dialogo di apertura del file da javascript è bloccata per motivi di sicurezza.


2 per risposta № 4

I browser IIRC non lo consentono come meccanismo precauzionale. Uno script non dovrebbe essere in grado di caricare automaticamente un file in qualche modo e armeggiare con la finestra di dialogo Apri file sarebbe uno di questi modi.

Ovviamente questo è un male in alcune situazioni ...