function llamarasincrono(url, id_contenedor)
{ 
	/* Crea el objeto AJAX. Esta funcion es generica para cualquier utilidad de este tipo, por
	lo que se puede copiar tal como esta aqui */
	var pagina_requerida=false; 
	try 
	{ 
		// Creacion del objeto AJAX para navegadores no IE
		pagina_requerida=new ActiveXObject("Msxml2.XMLHTTP"); 
	}
	catch(e)
	{ 
		try
		{ 
			// Creacion del objet AJAX para IE 
			pagina_requerida=new ActiveXObject("Microsoft.XMLHTTP"); 
		} 
		catch(E) { pagina_requerida=false; }
	}
	if (!pagina_requerida && typeof XMLHttpRequest!='undefined') 
	{ 
		pagina_requerida=new XMLHttpRequest(); 
	} 
	pagina_requerida.onreadystatechange = function ()
    {
        // función de respuesta
        cargarpagina (pagina_requerida, id_contenedor);
    }
    pagina_requerida.open ('GET', url, true); // asignamos los métodos open y send
    pagina_requerida.send (null);
}
// todo es correcto y ha llegado el momento de poner la información requerida
// en su sitio en la pagina xhtml
function cargarpagina (pagina_requerida, id_contenedor)
{
    if (pagina_requerida.readyState == 4 && (pagina_requerida.status == 200 || window.location.href.indexOf ("http") == - 1))
    {
		document.getElementById (id_contenedor).innerHTML = pagina_requerida.responseText;
	}
}

