Ciao,

il problema è che il pezzo di codice da te riportato presenta dei comandi di "return", sia in caso positivo sia in caso negativo. Tali comandi provocano effettivamente la terminazione della funzione javascript in cui il codice è contenuto. Per ovviare a questo problema, potresti definire una nuova funzione, in cui riporti il codice javascript che effettua il controllo sull'estensione: tale funzione sarà poi richiamata nella funzione in cui hai il resto del codice che permette l'upload del file.

Ad esempio:

function controllaestensione() {
//check file type.
var extension = new Array();
var fieldvalue = document.file_upload.File1.value;
extension[0] = ".avi";
// No other customization needed.
var thisext = fieldvalue.substr(fieldvalue.lastIndexOf('.'));
for(var i = 0; i < extension.length; i++) {
if(thisext == extension[i]) { return true; }
}
alert("ATTENZIONE!! L'estensione del file non è corretta!");
return false;
}

function uploadfile() {
if (controllaestensione()) {
//qui riporti il resto del codice per l'upload del file
}
}