2010-09-22 24 views
9

ho il seguente codice:browser di file aperti utilizzando jQuery

<p onclick="jQuery('#file').click()">Select a file</p> 
<input type="file" id="file" name="file" /> 

Quando l'utente fa clic su "Seleziona un file", si suppone anche per aprire il browser dei file come quando si preme il pulsante "Sfoglia" generato da <input type="file" />, in cui l'utente può selezionare un file.

Funziona perfettamente in Chrome e IE7. Come posso farlo funzionare in Firefox?

risposta

10

Fidati di me, mi sono già messo nei guai. Non funzionerà su Firefox e non ho trovato una risposta su come farlo funzionare.

Ho il sospetto che tu stia cercando di personalizzare l'aspetto del tuo file di input. Suggerisco, tu usi l'opacità. Imposta l'opacità del file di input su zero, per renderlo non visibile. Quindi metti sopra l'elemento a due span sopra di esso. Quindi puoi modellare l'intervallo quanto vuoi. Quando fai clic su uno qualsiasi degli intervalli, viene attivato anche il clic sul file di input.

Con che avete il potere di cambiare l'aspetto del file di input:

simple demo


note aggiunto. Il problema è che l'opacità non funziona su IE6. ;)

+0

funziona per aprire, come cani lo rendono tasto salvare? – anam

+0

@simmisimmi Non ho capito la tua domanda .... – Reigel

+0

voglio aprire il filebrowser per ottenere la posizione dall'utente al clic del pulsante Salva. – anam

10

C'è un modo migliore per aprire la finestra di dialogo (funziona in tutti i browser moderni in questo momento). Basta cambiare

jQuery('#file').click(); 

a

jQuery('#file').trigger('click'); 
+0

Questo metodo funziona con tutti i browser moderni? – alex

+0

Sì, come da testo della risposta. – Jason

Problemi correlati