【发布时间】:2011-07-26 15:25:03
【问题描述】:
我需要在发送表单之前验证用户和密码。为此,我使用 jQuery 和 Ajax。但是我在匿名函数之外传递 'estado'value 时遇到问题。
这是代码:
function tx_oriconvocatorias_pi1_validarFormPost(){
var x=document.forms["form_postulante"]["pass_un"];
if (x.value==null || x.value==""){
alert("Por favor ingrese su contraseña.");
return false;
}
var $j = jQuery.noConflict();
var cun = $j('#correo_un').val();
var pun = $j('#pass_un').val();
var estado = null;
$j.ajax({
type: 'POST',
data: 'eID=ori_convocatorias_formPost&correo_un='+cun+'&pass_un='+pun,
success: function(datos){
if(datos!=1){
alert ("La contraseña ingresada no es válida");
}
estado = datos;
alert(estado);
},
});
alert(estado);
if (estado!=1){
return false;
}
}
我注意到第一个alert(estado)(外部)返回null,然后第二个alert(estado)(内部)返回'datos',所以代码中的最后一个alert(estado)首先执行并且我的函数总是返回@987654327 @。
我不知道如何在执行 Ajax 代码之后而不是之前评估 'estado'。
提前感谢您的帮助。
【问题讨论】: