HTTPRequest2 =function(){
	var xmlhttp=null;
	try{
		xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
	} catch (_e){
		try{
			xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
		} catch(_E){}
	}
	if(!xmlhttp && typeof XMLHttpRequest != 'undefined'){
		try {
			xmlhttp = new XMLHttpRequest();
		}catch(e){
			xmlhttp = false;
		}
	}
	return xmlhttp;
} 
// charge un objet de type option à partir d'un url
function ask(url,optionObj){
	var http = new HTTPRequest2();
	http.open("GET",url,true);
	http.onreadystatechange=function() {
		if (http.readyState==4) {
	   		fillOption(optionObj,http);
  		}	
 	}
	http.send(null);
}
// modifie un objet option à partir de donnée XML
function fillOption(optionObj,http){
	//alert(optionObj.html());
	var opl =optionObj.length;
	//alert(opl);
	for(i=1; i< opl; i++){
		optionObj[1]= null;
	}
	xmldoc =http.responseText;
	var length = xmldoc.length;
	var indexStart = xmldoc.indexOf("<obj att_val=",0);
	var i=0;
	while(indexStart < length && indexStart >= 0){
		indexStart = xmldoc.indexOf("\"",indexStart);
		var indexEnd =xmldoc.indexOf("\"",indexStart+1);
		var attVal = xmldoc.substring(indexStart+1,indexEnd);
		indexStart = xmldoc.indexOf("att_text=",indexEnd);
		indexStart = xmldoc.indexOf("\"",indexStart);
		indexEnd =xmldoc.indexOf("\"",indexStart+1);
		var attText = xmldoc.substring(indexStart+1,indexEnd);
		optionObj[i]= new Option(attText,attVal,false,false);
		indexStart = xmldoc.indexOf("<obj att_val=",indexEnd+1);
		i++;
	}
	optionObj[1].selected;	
}
