Hola a todos, soy nuevo posteando, pero soy usuario recurrente del sitio.. mi problema es el siguiente:
Tengo una función javascript que llama un archivo PHP (que me devuelve datos XML) para llenar automaticamente un SELECT dependiendo de cual opcion escoja de un SELECT distinto. y funciona perfectamente pero SOLO SI HAY ALGUN alert(); EN EL CODIGO, donde sea que lo ponga... si llama al alert, entonces llena el select, pero si comento el alert entonces nada pasa... es muy raro.. y quiciera que me colaboraran con esto para poder quitar ese alert.. que es muy molesto... gracias
El select que llama a la funcion es este:
Código HTML:
<select size="1" name="v_p_linea" id="v_p_linea" onchange="CargaDatos('busca_tacon', 'v_p_linea', 'tacon')">
la función Javascript es la siguiente:
Código PHP:
function CargaDatos(tipo, valor, idSelect)
{
elValor = document.getElementById(valor).value;
//---
var xmlDoc;
var moz = (typeof document.implementation != 'undefined') && (typeof document.implementation.createDocument != 'undefined');
var ie = (typeof window.ActiveXObject != 'undefined');
if (moz) {
xmlDoc = document.implementation.createDocument("", "", null)
} else if (ie) {
xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async = false;
while(xmlDoc.readyState != 4) {};
}
xmlDoc.load('busca_linea.php?accion='+tipo+'&padre='+elValor);
//este es el alert
alert('Se han cargado datos');
//---
var results = xmlDoc.getElementsByTagName('results');
var datos = results[0].getElementsByTagName('rs');
var numDatos = results[0].getElementsByTagName('rs').length;
for(i=0;i<numDatos;i++)
{
a = datos[i].firstChild.nodeValue;
b = datos[i].getAttribute('codigo');
document.getElementById(idSelect).options[i+1] = new Option(a, b);
}
}
como les comento el codigo PHP esta bueno y funciona perfecto, igual que la funcion JS pero esa no hace nada a menos que un alert se ejecute...
gracias...