フォームを送信する前に、ユーザーとパスワードを検証する必要があります。そのためには、jQueryとAjaxを使用します。しかし、私は'estado'
の値を無名関数の外に渡す際に問題があります。AjaxとjQueryの匿名関数からデータを渡す際の問題
これはコードである:
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;
}
}
Iが最初にalert(estado)
(外側)nullを返し、その後、(内部)alert(estado)
秒'datos'
を返すので、コードの最後alert(estado)
は、第1および常に実行されることに気付きます私の関数はfalse
を返します。
'estado'
の評価方法はわかりませんが、Ajaxコードを実行した後ではありません。
ご協力いただきありがとうございます。
ありがとうございます、これで、私の期待通りに機能します。 – Memochipan