2013-03-15 91 views
0

它不会验证,这是做到这一点的正确方法吗?Jquery验证数组

我所有的表单验证功能的精细工作,但是当我点击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'); 
} 
+2

你的html代码在哪里? – 2013-03-15 23:16:32

回答

0

如图所示的代码有语法错误 - 就在结束它缺少收盘:

}); 

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

我没有看到你已经证明了任何其他错误,但你有没有表现出任何的你blurkeyup处理程序调用的函数,所以......你blur

口语和通过直接与内在功能

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

...:keyup处理程序,可以简化您已经定义这样的功能

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

如果您需要采取其他操作,除了拨​​打checkEmail()或者需要将参数传递给checkEmail(),您只需要匿名功能。 (你有它的方式不是错误,它不会阻止它的工作,我建议更短的方式来做同样的事情。)

此外,为什么你使用字符串'false''true',而不是布尔人falsetrue