function rsVille(f) { 
	var l1    = f.CP.value;
	var index1 = l1.selectedIndex;  
	   var xhr_object = null; 
	
		// --- procédure permettant d'instancier l'objet xhr_object en fonction du navigateur
	   if(window.XMLHttpRequest) // Firefox
	      xhr_object = new XMLHttpRequest();
	   else if(window.ActiveXObject) // Internet Explorer
	      xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
	   	else { // XMLHttpRequest non supporté par le navigateur
	      alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
	      return;
	   	}
		// ---
	   xhr_object.open("POST", "requete_ville.php", true); // (methode de transmission, url, mode de transmission)
	
   	xhr_object.onreadystatechange = function() {	// test asynchrone de l'etat de la requete
      	if(xhr_object.readyState == 4){			// 4=etat OK
		 eval(unescape(xhr_object.responseText));	// xhr_object.responseText = résultat de l'éxécution de la requete  - unescape ne sert que pour convertir Citro%ebn en Citroën
 												// eval execute le code renvoyé par la requete qq soit son type
		 //alert(xhr_object.responseText);		// permet de visualiser le résultat de la requete
		}
	}												

	   xhr_object.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); // preciser l'encodage pour la methode POST
	   var data = "cp="+escape(l1)+"&form="+f.name+"&select=ville";
	   xhr_object.send(data); // envoi des données
	
} <!-- fin rsMarque

