Javascript: espere a que la función en el bucle termine de ejecutarse antes de la próxima iteración
$(function() {
$("#submit").click(function() {
for (var i=1; i<=14; i++)
{
setID(i);
checkField(i);
}
if ($('#pass_fail').val() != "fail")
{
//do something
}
Esto es lo que sucede cuando hago clic en el botón Enviar de un formulario de registro.
Orden de ejecución que quiero:
setID (1);
checkField (1); // espera a que esto termine
setID (2);
checkField (2);
setId (3);
checkField (3);
....
si la declaración
Orden de ejecución me sale:
para el bucle que va de i = 1 a i = 14
si la declaración
checkField (i) s en orden aleatorio
Problema: $ ('# pass_fail'). val () tiene un valor predeterminado de 'pass'. Sin embargo, a través del bucle, checkField (i) podría cambiar su valor a 'fail'. Pero dado que en realidad la instrucción if se ejecuta antes de checkField (i) s, el valor de $ ('# pass_fail') siempre termina siendo 'pass' y siempre se ejecuta 'do algo'.
¿Cómo espero que checkField (i) termine de ejecutarse antes de pasar a la siguiente iteración del bucle? ¡Gracias de antemano!