Tu n'as en réalité aucun problème pour attendre la réponse, car elle arrive toute seule.
Ce qu'il faut garder à l'esprit, c'est que c'est de l'asynchrone , ce qui signifie que ton script continue à s'executer après l'envoi de la requête. Dés que la réponse arrivera (dans x millisecondes, ou n secondes, peu importe), la function que tu as probablement défini (du style xho.onreadystatechange=function()...) s'exécutera, et pas avant. Donc tu n'as pas à "attendre de réponse", mais plutot à définir ce qui doit se passer quand celle-ci arrivera.