ottimo, una osservazione guardando questo codice..
codice:
function populateSelect(){
alert('sono qui');
marcauto = document.getElementById('menumarca').value;
httpObject = getHTTPObject();
var r = Math.random();
if (httpObject != null) {
httpObject.open("GET", "selectphp.php?MARCA=" + marcauto + "&RAND=" +escape(r), true);
httpObject.send(null);
alert ("ho finito la chiamata Ajax");
populate();
}
}
perchè chiami in cascata il metodo populate? questo potrebbe non aver ancora finito (ad esempio se provi in ambiente remoti o caricati da richieste..) se non l'hai fatto io metterei il contenuto di populate() dentro l'onreadystatechange ..
probabilmente con alert funzionava perchè dava il tempo di eseguire era come una attesa a eseguire il populate..
ciao