Ciao a tutti,
volevo chiedervi se qualcuno sa se esiste un modo per l'upload di file in ajax.. Tipo come fa facebook per intenderci..
Sapete nulla? Grazie
Ciao a tutti,
volevo chiedervi se qualcuno sa se esiste un modo per l'upload di file in ajax.. Tipo come fa facebook per intenderci..
Sapete nulla? Grazie
Mess with the best die like the rest.
Non ho FB ma da quanto ne so ajax invia e riceve "stringhe" non dati binari, pertanto non è possibile
Cavicchi Andrea
Problemi con javascript, jquery, ajax clicca qui
Sì questo lo so infatti mi chiedevo come facesse..
L'input di facebook è così:
Poi ho trovato questo con jQuery che potrebbe essere utile.. Funziona secondo voi?codice:<input name="file1" type="file" onchange="Composer.getInstance(this).setEnabled(!!this.value);Arbiter.inform('composer/MediaFileSelected', !!this.value);">
E pooi, ho pensato, al massimo andrebbe bene anche di fare l'upload del file senza cambiare pagine.. E' una cosa fattibile?
Mess with the best die like the rest.
Questo è il comando da qui a capire come funziona ce ne passaOriginariamente inviato da KingWoody
Sì questo lo so infatti mi chiedevo come facesse..
L'input di facebook è così:
codice:<input name="file1" type="file" onchange="Composer.getInstance(this).setEnabled(!!this.value);Arbiter.inform('composer/MediaFileSelected', !!this.value);">Sulla carta (vedi articolo) basta provarlo
Poi ho trovato questo con jQuery che potrebbe essere utile.. Funziona secondo voi?Come già detto in puro ajax cross-browser non è possibile, forse installando estensioniE pooi, ho pensato, al massimo andrebbe bene anche di fare l'upload del file senza cambiare pagine.. E' una cosa fattibile?
Cavicchi Andrea
Problemi con javascript, jquery, ajax clicca qui
Facebook tendenzialmente usa flash (nascosto) per l'upload dei file. In ogni caso con AJAX puoi:
- Inviare uno o più file (binari compresi) direttamente come "blob" (tramite il costruttore FormData()... guardati questo esempio: https://developer.mozilla.org/en-US/...t_from_scratch)
- Inviare uno o più file file (binari compresi) convertiti in stringa base64. In questo secondo caso l'input lo puoi ottenere tramite il costruttore FileReader() (per il quale ti rimando a quest'esempio: https://developer.mozilla.org/en-US/...sDataURL%28%29)
Il problema in entrambi i casi è l'utilizzo di due tecnologie (rispettivamente i costruttori FormData e FileReader) appartenenti al mondo dell'HTML 5.0. E che di conseguenza non ti funzioneranno mai con browser datati.
Tutto ciò che fai con jQuery puoi farlo meglio e con la metà del codice in puro JavaScript.