0

它不会验证,这是正确的做法吗?

我所有的表单验证功能都工作正常,但是当我单击submit按钮时它不会验证

代码:

  var pinvalid = 'false';
    var emailvalid = 'false';
    var confirmemailvalid = 'false';
    var passwordvalid = 'false';
    var confirmpassword = 'false';

    //Validate PIN
    $('#SUInpR_UserPin').keyup(function(){
checkAvailability();

});
  // Validate Email
$('#SUInpR_Email').blur(function(){
checkEmail();
})

// Compare email address
$('#SUInpR_CEmail').blur(function(){

compareEmail();

})  



  //Check Password
   $('#SUInpR_Password').blur(function(){


validatepassword();
})

// Comfirm Password
$('#SUInpR_PasswordConfirm').keyup(function(){

validatepasswordcheck();

})


//When signup button is click

$('#BtnGoSignUp').click(function(e){


if (pinvalid == 'true' ){
    alert('Please check and make sure the all fields are entered');

}
else if(emailvalid == 'false'){
    alert('Please Enter your email address');

}
else if(confirmemailvalid == 'false'){
    alert('Please confirm your Email Address');

}
else if (passwordvalid == 'false'){
    alert('Please Enter your password');

}
else if (confirmpassword == 'false'){alert('Please Confirm your Password');



}
else{
    alert('all ok');
}
4

1 回答 1

0

如图所示的代码有一个语法错误 - 就在最后它缺少关闭:

});

...属于$('#BtnGoSignUp').click(function(e){.

我没有在您显示的内容中看到任何其他错误,但您没有显示您的blurkeyup处理程序调用的任何函数,所以......

说到您的blurkeyup处理程序,您可以简化您定义的函数,如下所示:

$('#SUInpR_Email').blur(function(){
checkEmail();
})

...通过直接绑定内部函数:

$('#SUInpR_Email').blur(checkEmail);    // note: no () after checkEmail

如果您需要执行除调用之外的其他操作checkEmail(),或者需要将参数传递给checkEmail(). (你拥有它的方式不是错误,它不会停止它的工作,我建议用更短的方法来做同样的事情。)

另外,你为什么使用字符串'false''true'不是布尔值falsetrue

于 2013-03-16T00:40:03.500 回答