prueba a estructurarlo, la creación del objeto por un lado y llamada por otro
Cita: <script>
function ajax(){
var req;
if (window.XMLHttpRequest) {
req = new XMLHttpRequest();
} else {
req = new ActiveXObject("Microsoft.XMLHTTP");
}
}
function Cargar(url, target){
var req = ajax();
var objetivo = target;
req.open("GET", url, true);
req.send("");
req.onreadystatechange = function()
{
if (req.readyState !=4) {
document.getElementById(objetivo).innerHTML = "Cargando<br>TB podemos poner una IMG de cargando...";
}
else if (req.readyState == 4)
{
if (req.status == 200)
{
document.getElementById(objetivo).innerHTML = req.responseText;
}
else
{
document.getElementById(objetivo).innerHTML = "Error";
}
}
}
}
</script>
en caso que aún no funcione, usa la consola de errores de ff o de chrome