Hola Gente, quisiera separar una funcion en dos, pero me da error.
 
paso a explicar: 
esta es la funcion (asi funciona barbaro): 
 Código HTML:
 var oXML;
var xmlDataSet;
function leerDatos()
{
       if (oXML.readyState == 4)
    {
        var xmlDataSet  = oXML.responseXML.documentElement;
         var tabla = '<table border = "1" bordercolor= "red"><tr>';
                                
                        
                        for (i = 0; i < xmlDataSet.getElementsByTagName('laboratorio').length; i++)
                        {
                            var item = xmlDataSet.getElementsByTagName('laboratorio')[i];
                            var idGrilla=i
                            var id = item.getElementsByTagName('id')[0].firstChild.data;
                            var cell = item.getElementsByTagName('nombre')[0];
                      }
    }
}
var url="../index.php";
    url=url+"?front"
    url=url+"&sid="+Math.random();
    
    oXML.open("GET", url,true);
    oXML.onreadystatechange = leerDatos;
    oXML.send(null);
 quisiera que quede de esta manera:  
 Código HTML:
 function leerDatos()
{
       if (oXML.readyState == 4)
    {
       xmlDataSet  = oXML.responseXML.documentElement;
    }
}
function armarTabla()
{
 var tabla = '<table border = "1" bordercolor= "red"><tr>';                                
                        
                        for (i = 0; i < xmlDataSet.getElementsByTagName('laboratorio').length; i++)
                        {
                            var item = xmlDataSet.getElementsByTagName('laboratorio')[i];
                            var idGrilla=i
                            var id = item.getElementsByTagName('id')[0].firstChild.data;
                            var cell = item.getElementsByTagName('nombre')[0];
//bla,bla.bla
}
var url="../index.php";
    url=url+"?front"
    url=url+"&sid="+Math.random();
    oXML.open("GET", url,true);
    oXML.onreadystatechange = leerDatos;
    oXML.send(null);
    armarTabla();
 el tema es que cuando separo la funcion en dos me da error en la linea del for :
for (i = 0; i < xmlDataSet.getElementsByTagName('laboratorio').len  gth; i++)
me dice que el objeto no acepta esa propiedad o metodo. 
noté algo extraño, si le pongo un alert() en la funcion actualizarGrilla, le doy aceptar al alert en tiempo de ejecución y ahi si carga la grilla. Que tiene que ver? 
function actualizarGrilla()
{ 
var url="../index.php";
url=url+"?front=frontLaboratorios&accion=listarlab oratorios"
url=url+"&sid="+Math.random(); 
alert(); Poniendo esto funciona, si lo saco da el error.
oXML.open("GET", url,true);
oXML.onreadystatechange = leerDatos; 
oXML.send(null); 
cargarGrilla();
} 
Muchas gracias desde ya.