solo fijarse en las funciones, evento_cuatro y cargarClientes
a base de alertas me he dado cuenta que funcion evento_cuatro, justo en esta parte var id_cte = document.getElementById('IdCte').value;, se detiene todo, la variable "s", es una variable global(no se si asi se llaman en javascript xD), que esta en el documento donde se carga estas funciones, esa variable no causa ningun problema, el problema es esa linea que detiene todo, ese objeto aparece gracias a una funcion AJAX(PHP genera HMTL donde esta ese objeto y ajax lo escribe en un div, vease funcion ir_a_PHP() ), me pregunto si por eso genera error javascript, lo raro que en Internet Explorer funcciona perfectamente.
mi pregunta concreta, porque javascript se detiene en esa linea?
He probado alert(id_cte); justo despues de tal linea y no ocurre ningun evento(ni siquiera mensaje de undefined o null), por lo que es un STOP definitivo, PORQUE!!, he creado elementos como esos en otras aplicaciones y funciona bien, pero esta no
Nota: las demas funciones estan nada mas para informacion extra que puedan necesitar, pero no tienen nada que ver con las funciones mencionadas
Código:
function evento_uno(mCte, form) { mCte.innerHTML = '<br><img src="/imagenes/loading.gif"> Buscando, por favor espere...'; form.Crear.style.display = ''; document.getElementById('buscar_cte_fno').style.display = 'none'; document.getElementById('companias_cte_fno').innerHTML = ''; document.getElementById('cte_fno_').innerHTML = ''; document.getElementById('datos').innerHTML = ''; document.getElementById('companias_cte').innerHTML = ''; document.getElementById('ingreso').disabled = true; document.getElementById('botonIngreso').disabled = true; } function evento_dos(idCliente) { document.cte.Crear.style.display = 'none'; document.getElementById('buscar_cte_fno').style.display = ''; document.getElementById('companias_cte_fno').innerHTML = ''; document.getElementById('cte_fno_').innerHTML = ''; document.getElementById('datos').innerHTML = ''; document.cte_fno.nombre.focus(); document.getElementById('ingreso').disabled = false; document.getElementById('botonIngreso').disabled = false; ir_a_PHP("accion=BuscarCteFno&nombre="+idCliente, document.getElementById('cte_fno_')); ir_a_PHP("accion=cargar_comp_cte&IdCte="+idCliente, document.getElementById('companias_cte')); ir_a_PHP("accion=cargar_tarjeta&IdCte="+idCliente, document.getElementById('ingreso')); } function evento_tres(mCte) { document.getElementById('companias_cte_fno').innerHTML = ''; mCte.innerHTML = '<br><img src="/imagenes/loading.gif"> Buscando, por favor espere...'; document.getElementById('datos').innerHTML = ''; } function evento_cuatro(id_cliente_fno) { alert('2345'); alert(id_cliente_fno); var id_cte = document.getElementById('IdCte').value; ir_a_PHP('accion=envio_dinero&IdCteFno='+id_cliente_fno+'&IdCte='+id_cte, document.getElementById('datos')); ir_a_PHP('accion=cargar_comp_cte_fno&IdCteFno='+id_cliente_fno, document.getElementById('companias_cte_fno')); } function buscarCliente(form, cliente) { var nombre = form.nombre.value; var buscar = form.buscar.disabled = true; var mCte = document.getElementById(cliente+'_'); //estas tres variables son global, cte or cte_fno if(cliente == 'cte') { if(nombre!= '') { if(s==1) { evento_uno(mCte, form); } else if ( s == 2) { evento_cinco(mCte, form); } else if ( s == 3) { evento_nueve(mCte, form); } ir_a_PHP('accion=BuscarCte&nombre='+nombre, mCte); } } else if(cliente == 'cte_fno') { if(nombre == '') { nombre = document.getElementById('IdCte').value; //si no ha escrito nada el usuario en el campo obtengo el IdCliente } if(s==1) { evento_tres(mCte); } else if(s == 2) { evento_siete(mCte); } ir_a_PHP("accion=BuscarCteFno&nombre="+nombre, mCte); } form.buscar.disabled = false; } function cargarClientes(id_clientes, cliente) { if(document.getElementById('IdCte') != undefined) { var id_cte = document.getElementById('IdCte').value; } else { var id_cte = ''; } var mCte = document.getElementById(cliente+'_'); ir_a_PHP('accion=cargar_'+cliente+'&IdCtes='+id_clientes+'&IdCte='+id_cte, mCte); if(cliente == 'cte') { if(s==1) { evento_dos(id_clientes); } else if(s == 2) { evento_seis(id_clientes); } else if(s == 3) { evento_dies(id_clientes); } } else if(cliente == 'cte_fno') { if(s==1) { evento_cuatro(id_clientes); } else if(s == 2) { evento_ocho(id_clientes); } } } function ir_a_PHP(variables, mostrador) { var ajax=nuevoAjax(); ajax.open("POST", "/Libreria/servicios.ajax.php", true); ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); ajax.send(variables); ajax.onreadystatechange=function() { if (ajax.readyState==4) { if(mostrador.type == undefined) { mostrador.innerHTML = ajax.responseText; } else if(mostrador.type == 'text') { mostrador.value = ajax.responseText; } } } }