Script javascript: Controllare estensione di un file

   difficoltà:  script script script script script

Script simili
4/2/2008


Con questo script javascript potremo trovare l'estensione di un file. Alla funzione get_estensione potremo passare il nome di un file, il percorso completo di un file sul nostro disco o un url.
Vediamo la funzione:

function get_estensione(path) {
posizione_punto=path.lastIndexOf(".");
lunghezza_stringa=path.length;
estensione=path.substring(posizione_punto+1,lunghezza_stringa);
return estensione;
//alert(estensione);
}

Questa funzione può essere usata anche per validare un campo input file, in cui si possono accettare solo alcune estensioni di file da caricare.
Vediamo un esempio in cui si desidera far caricare esclusivamente file con estensione "jpg":
<script>
function get_estensione(path) {
posizione_punto=path.lastIndexOf(".");
lunghezza_stringa=path.length;
estensione=path.substring(posizione_punto+1,lunghezza_stringa);
return estensione;
}

function controlla_estensione(path){
if(get_estensione(path)!="jpg"){
alert("Il file deve avere estensione jpg");
}
}
</script>

<input type="file" id="file" onchange="controlla_estensione(document.getElementById('file').value);">


Social:


Donazione:
Se questo script ti è stato utile e ti ho fatto risparmiare tempo e denaro fai una
qualsiasi cifra è ben accetta! 1€, 3€, 5€ ,10€, 50€ ;-) fai te!

Permalink: Tag: Script Simili: Permalink: Link utili:
Tools:
Feed RSS    



Commenti


  andrea

30/3/2009 21:13:31

grazie, ottimo suggerimento!

  webdv

27/1/2010 12:58:59

bellissimo script!
ma come si fa a cancellare il contenuto del campo file se non supera il controllo dell'estensione?
grazie!

  DeMoN3

15/2/2010 17:44:28

@webdv:
dopo l'alert inserisci questa riga:

document.getElementById('file').value=null;


Il mio dubbio invece è: e se devo controllare contemporaneamente piu' di una input box e devo cancellare solo quella sbagliata?



Lascia un commento


Codice di controllo*:
Nome*:
Email/Link:
Testo*:
 
I campi contrassegnati con * sono obbligatori.