saludos amigos ya me rendi y decidi pedir ayuda!!!!
fijense tengo 2 funciones que usan ajax para arrojar un resultado pero creo q al usar ajax algo ocurrre con la ejecucion y el orden en el que se desenvuelven. ejemplo la funcion 1 retorna "1" o "0" y dependiendo de ella se ejecuta la segunda sin embargo la segunda pase lo q pase con la primera siempre se ejecuta. anexo el codigo:
llamada de las funciones:
Código:
function nuevoAjax()
{
var xmlhttp=false;
try
{
// Creacion del objeto AJAX para navegadores no IE
xmlhttp=new ActiveXObject("Msxml2.XMLHTTP");
}
catch(e)
{
try
{
// Creacion del objet AJAX para IE
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
catch(E)
{
if (!xmlhttp && typeof XMLHttpRequest!='undefined') xmlhttp=new XMLHttpRequest();
}
}
return xmlhttp;
}
/////////////////////////////////
///////////////////////////////////////////////
function verificar_si_existe()
{
var op=0;// esta variable la cree para ubicar el resultado despues del ajax2.send(null);
var ajax2=nuevoAjax();
ajax2.open("GET", "ajax_despacho.php?opc=2&cedula="+document.getElementById('cedula').value, true);//
ajax2.onreadystatechange=function()
{
if (ajax2.readyState==4)
{ if(ajax2.responseText=="1")
{
alert("el beneficioario que intenta registrar ya existe en nuestro sistema.");
op=1;
}
}
}
ajax2.send(null);
return op;
}
/////////////////////////////////////////////
function registrar_beneficiario()
{
if(verificar_si_existe()==0){//** aqui es donde se hace la llamada de la segunda funcion. actualmente cuando el beneficiario esta registrado el sistema me muestra los 2 avisos el que dice que hubo un error y no se pudo guardar y el que dice ya el beneficiario esta registrado en nuestro sistema
var ajax=nuevoAjax();
ajax.open("GET", "ajax_despacho.php?opc=1&nombre="+document.getElementById('nombre').value+"&apellido="+document.getElementById('apellido').value+"&cedula="+document.getElementById('cedula').value+"&telefono="+document.getElementById('telefono').value+"&correo="+document.getElementById('correo').value+"&fecha_n="+document.getElementById('fecha_n').value+"&sexo="+document.getElementById('sexo').options[document.getElementById('sexo').selectedIndex].value+"&estado="+document.getElementById('estados').options[document.getElementById('estados').selectedIndex].value+"&municipio="+document.getElementById('municipios').options[document.getElementById('municipios').selectedIndex].value+"&telefono2="+document.getElementById('telefono2').value+"&direccion="+document.getElementById('direccion').value, true);//
ajax.onreadystatechange=function()
{
if (ajax.readyState==4)
{
if(ajax.responseText==1)
{
alert("el beneficioario se registro sin problema");
}else{alert("ocurrio un error no se pudo guardar el beneficiario");}
}
}
ajax.send(null);
}else{}
}
agradecido al que me pueda orientar o explicar la logica que se esta implementando mal, pues asumo es una cuestion de ajax antes los objetos ajax se llamaban igual probando les cambie el nombre pero igual