0
jquery에 양식을 검증 할 때 양식을 제출할 때 오류가 있어도 원격을 제거하면 올바르게 작동하고 양식을 제출할 수 없습니다. 모든 분야에서 채워 졌습니까? 어떤 아이디어?Jquery 유효성 검사 양식에 원격을 추가 할 때 유효하지 않음
<?php
session_start();
if(strtolower($_REQUEST['answer']) == $_SESSION['captcha']){
echo 'true';die;
}else{
echo 'false';die;
}
?>
검증은 여전히 함께 원격없이 onKeyUp에 등 작동하지만 단지에 제출하지 : 코드는 다음과 같습니다
<script>
$(document).ready(function() {
$("#SignUp").validate({
onsubmit: true,
onkeyup: function(element) { $(element).valid(); },
rules: {
email: {
required: true,
email: true
},
password: {
required: true,
password: true
},
confirm_password: {
equalTo: "#password",
required: true
},
company: {
nls:true,
required: true
},
telephone: {
required: true,
phoneUK: true
},
email2: {
email: true
},
website: {
url: true
},
address1: {
nls:true
},
address2: {
nls:true
},
town: {
nls:true
},
postcode: {
postcodeUK:true
},
country: {
selectcountry:true
},
terms:{
required:true
},
answer:{
remote: "Captcha/check-captcha.php",
type: "POST",
data: {
captcha: function() {
return $("#answer").val();
}
}
}
},
messages:{
email:
{
required: "Please Enter an Email Address"
},
password:
{
required: "Please Enter a Password"
},
confirm_password:
{
required: "Please Confirm Your Password"
},
company:
{
required: "Please Enter Your Company/Climbing Gym Name"
},
telephone:
{
required: "Please Enter a Telephone Number"
},
terms:
{
required: "Please Agree Our Terms and Conditions"
},
answer:{
remote: "You Have Entered The Captcha Correctly When This Message Disappears"
}
}
});
$.validator.addMethod("password", function (value, element) {
return this.optional(element) || /^[[email protected]#$%^&*()_]{6,16}$/i.test(value);
}, "Passwords are 6-16 characters");
$.validator.addMethod("nls", function(value, element)
{
return this.optional(element) || /^[a-zA-Z0-9\s.\-_']+$/i.test(value);
}, "Please Only Enter Alpha Numeric Characters and Spaces");
jQuery.validator.addMethod('selectcountry', function (value) {
return (value != 'Nothing');
}, "Please Select a Country");
$.validator.addMethod("url", function(value, element)
{
return this.optional(element) || /^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$/i.test(value);
}, "Please Enter A Valid Website URL");
});
</script>
PHP 이하?
원격 규칙이 답'해야입니다 : { 원격 : { URL : "보안 문자/- captcha.php 확인", 유형을 " POST ", 데이터 : { captcha : function() { return $ ("# answer "). val(); } } } } ' –
한 가지 유념해야 할 점은 Ajax를 사용하여 클라이언트 측에서 원격 검증은 보안 문자는 대답에 자리를 –
건배 아룬 제출 양식의 제출 핸들러에서 검증 될 필요가 충분하지입니다 , 어리석은 실수, 많은 감사합니다 – user3166610