@gasmor ti hanno dato una dritta eseguire l'operazione in ajax.
Invece che uppare il thread potevi eseguire una ricerca, sara per la prossima volta.
Vedi se questo esempio fa al caso tuo:
codice:
  function carica(rif){
      ajx = objAjx();
         if(ajx){
           //Chiamo la funzione caricoRisultati quando c'è un cambio evento    
              ajx.onreadystatechange=function(){
                 caricoRisultati(ajx, rif)
              }
              
           //Invio i dati alla pagina 
              ajx.open('GET', rif, true)         
              ajx.send(null)                                      
         }
   }
   
   function caricoRisultati(ajx, rif){
   //Se è andato tutto bene faccio vedere il risultato
      if (ajx.readyState == 4 && (ajx.status==200 || window.location.href.indexOf("http")==-1)){
//carico il risultato nel div
         document.getElementById('NOME_DIV').innerHTML=ajx.responseText
      }    
   }
   
   function objAjx(){
      var ajax = false
      if (window.XMLHttpRequest) // if Mozilla, Safari etc
      ajax = new XMLHttpRequest()      
      else if (window.ActiveXObject){ // if IE
         try {
            ajax = new ActiveXObject("Msxml2.XMLHTTP")            
         } 
         catch (e){
            try{
               ajax = new ActiveXObject("Microsoft.XMLHTTP")
            }
            catch (e){}
         }
      }  
      else{         
         return false   
      }
      return ajax
   }
va richiamato cosi carica ajax
Questo e per caricare la pagina in modalita GET x la modalita POST devi modificare alcuni parametri nella sezione guide ajax di javascript.html.it trovi le spiegazioni dettagliate.