Soy novato en Javascript y JQuery y tengo un problema que no consigo solucionar.
Pido vuestra ayuda.
Tengo un script JQuery en el que, a la pulsación de cada tecla, quiero que se ejecuten varias funciones consecutivamente (la primera cargará con un valor un input y la segunda copiará ese valor en otro input)
Ejemplo:
Código:
Cuando se pulsa y se suelta una tecla sobre el input con class='accion' , en el input con class='dato1' se carga el valor correspondiente. $(document).ready(function() { function primera(){ var valor = 23; $.get('carga_datos.php, {variable: valor}, function(dato1){ $('.dato1').val(dato1); }); function segunda(){ var dato1 = $('.dato1').val(); $('.dato2').val(dato1); } $('.accion').bind('keyup', function(){ primera(); segunda(); }); ...
El problema es que primera() se ejecuta bien, pero segunda() no.
segunda() no puede recuperar el valor que hay en el input con class='dato1'
Parece como si no le diese tiempo a recuperar lo que hay en el input.
Sin embargo, juntando todo en una única función, todo va bien.
Es como si en:
Código:
segunda() intentase ejecutarse antes de haber acabado primera() de escribir en el input.$('.accion').bind('keyup', function(){ primera(); segunda(); });
¿Es esto así?.
¿Hay solución (aparte de hacer una única función)?
Gracias anticipadas.
Un saludo