function nuevoAjax(){ 
  var xmlhttp=false; 
  try { 
   // Creación del objeto ajax para navegadores diferentes a Explorer 
   xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); 
  } catch (e) { 
   // o bien 
   try { 
     // Creación del objet ajax para Explorer 
     xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); } catch (E) { 
     xmlhttp = false; 
   } 
  } 

  if (!xmlhttp && typeof XMLHttpRequest!='undefined') { 
   xmlhttp = new XMLHttpRequest(); 
  } 
  return xmlhttp; 
}

function aj(pagina, etiq, boton, carga, func){ 
	ajax=nuevoAjax(); 
	if (pagina.indexOf('?')==-1){
		pagina=(pagina+'?tag='+etiq);
	}else{
		pagina=(pagina+'&tag='+etiq);
	}
	ajax.open("GET", pagina,true); 
	ajax.onreadystatechange = function(){ 
	if (ajax.readyState==4){
		if (ajax.status==200){
			try { document.getElementById(etiq).innerHTML = ajax.responseText; } catch(e){ }
			try { func(ajax); } catch(e){ }
			try{ document.getElementById(carga).innerHTML = ""; } catch(e){ }
			try{ boton.click(true); } catch(e){ }
			}			
	}else{ 
		document.getElementById(carga).innerHTML = '<strong>Cargando...</strong><img src="cargando.gif">'; 
		}
	} //end function
	ajax.send(null);
} 


function ajf(form,etiq,boton){
	var elements = form.elements;
    q = '1=1';
    for (var i = 0; i < elements.length; i++) {
        if ((name = elements[i].name) && (value = elements[i].value))
            q=q+'&'+name+"="+escape(value);
    }
	pagina=form.action+'?'+q;
	//alert(pagina);
	ajax=nuevoAjax(); 
	ajax.open("GET", pagina,true); 
	ajax.onreadystatechange=function(){ 
		if (ajax.readyState==4){
			if (etiq!=''){
				etiq=document.getElementById(etiq);
				if(etiq!=undefined)
					etiq.innerHTML = ajax.responseText;
			};
			if(boton){
				boton=document.getElementById(boton);
				if(boton!=undefined)
					boton.click(true);
			}
		}
	}
	ajax.send(null);
}

function ajXML(pagina, etiq, etiqXML, carga, boton, func){ 
	ajax=nuevoAjax(); 
	if (pagina.indexOf('?')==-1){
		pagina=(pagina+'?tag='+etiq);
	}else{
		pagina=(pagina+'&tag='+etiq);
	}
	ajax.open("GET", pagina,true); 
	ajax.onreadystatechange = function(){ 
	if (ajax.readyState==4){
		if (ajax.status==200){
			xml = ajax.responseXML.getElementsByTagName(etiqXML);
			if (document.getElementById(etiq).options.length != 0){
				for (m = document.getElementById(etiq).options.length-1; m>=0; m--){
					document.getElementById(etiq).options[m]=null;
					}
				}
			option = document.createElement('option');
			option.text = "Seleccionar...";
			option.value = ''
			document.getElementById(etiq).add(option, null);
			for (i = 0; i < xml.length; i++){
				try {
					option = document.createElement('option');
					option.text = xml[i].childNodes[0].nodeValue;
					document.getElementById(etiq).add(option, null);				
				}catch (e){ }	
				}
			try { func(ajax); } catch(e){ }
			try{ document.getElementById(carga).innerHTML = ""; } catch(e){ }
			try{ boton.click(true); } catch(e){ }
			}			
		}else{ document.getElementById(carga).innerHTML = '<strong>Cargando...</strong><img src="cargando.gif">'; }
	} //end function
	ajax.send(null);
	}
	
function ajXMLF(pagina, etiq, etiqXML, carga, boton, func){ 
	ajax=nuevoAjax(); 
	if (pagina.indexOf('?')==-1){
		pagina=(pagina+'?tag='+etiq);
	}else{
		pagina=(pagina+'&tag='+etiq);
	}
	ajax.open("GET", pagina,true); 
	ajax.onreadystatechange = function(){ 
	if (ajax.readyState==4){
		if (ajax.status==200){
			xml = ajax.responseXML.getElementsByTagName(etiqXML);
			document.getElementById(etiq).value = xml[0].childNodes[0].nodeValue;
			try { func(ajax); } catch(e){ }
			try{ document.getElementById(carga).innerHTML = ""; } catch(e){ }
			try{ boton.click(true); } catch(e){ }
			}			
		}else{ document.getElementById(carga).innerHTML = '<strong>Cargando...</strong><img src="cargando.gif">'; }
	} //end function
	ajax.send(null);
	} 