elseif? Lo siento mucho pero el lenguaje que usáis no es javascript.
A partir de ahora supondré que se ha querido escribir
else if.
Añadiré 4 cosillas a tu código para que luego se entienda mi código equivalente pero que funciona:
Código Javascript
:
Ver originalfunction a () {}
function b () {}
function c () {}
function validaform(falta_la_variable_campo) {
if (campo.length == 0) {
a()
} else if(campo2.length == 0) {
b()
} else if (validateinfo(campo2)) {
c()
}
}
function validateinfo(info) {
$.ajax({
data: {
info: info,
},
url: 'validador.php',
type: 'post',
success: function (response) {
if (response == 1)
return true;
else
return false;
}
});
}
Para resolver este tipos de problemas de asincronicidad existe el objeto
$.Deferred de jQuery:
Código Javascript
:
Ver originalfunction a () {}
function b () {}
function c () {}
function validaform(falta_la_variable_campo) {
if (campo.length == 0) {
a()
} else if(campo2.length == 0) {
b()
} else {
validateinfo(campo2)
.done(c)
}
}
function validateinfo(info) {
var defer = $.Deferred()
$.ajax({
data: {
info: info,
},
url: 'validador.php',
type: 'post'
}).done(function (response) {
if (response == 1)
defer.resolve()
} else {
defer.reject()
}
});
return defer
}
Un saludo!