2011-02-02 20 views
11

Ok, quindi ho un elemento di input di tipo file e l'ID "test"Input File Fai clic su Chrome

Quando ho messo nella barra degli indirizzi: javascript:. Document.getElementById ("test") clicca() che porta la finestra di dialogo Apri file in modo che l'utente possa decidere cosa caricare. Tuttavia, se questa stessa riga esatta viene inserita nel documento o eseguita nella console di Chrome, non viene visualizzata la finestra di dialogo del file aperto. Infatti la console dice che la funzione click() non è definita. C'è qualche modo in Chrome per fare questo?

Causa sembra funzionare bene per uno qualsiasi degli altri browser

+0

quello che stai vedendo un s undefined è il valore di ritorno di 'document.getElementById (" test "). click()' e non la funzione effettiva non definita. – Ravikiran

+0

è l'input nascosto? – Sirber

risposta

0

ho avuto lo stesso problema e sono riuscito a risolverlo (anche se sto usando jQuery). Ho dettagliato la tecnica in un'altra domanda

Jquery trigger file input

L'idea era essenzialmente quello di focalizzare l'input file prima di far scattare il click programatically.

1

Si dovrebbe avvolgere elemento di file-input per altri (ex.:div): httm:

<div> 
<input type='file'> 
<div> 

CSS:

div{ 
height:1px; 
overflow: hidden; 
} 

JS:

$('div input').click(); 

Buona fortuna ...

+0

Questo ha funzionato davvero per me. Strano! – williamle8300

Problemi correlati