javascript - 远程验证

标签 javascript jquery validation

下面是我的代码,验证只在没有远程验证的情况下有效。一旦我包含远程验证,它就提交表单而不完成所有其他表单验证?

    $(document).ready(function() {


      $("#form1").validate({
            rules: {
                firstName: "required",// simple rule, converted to {required:true}
                lastName: "required",
                email: {// compound rule
                        required: true,
                        email: true,
                        success: "valid",
                        remote: "checkAddress.php"
                },      
                password: {
                    required: true,
                    success: "valid",
                    minlength: 5
                },

                verify: {
                    required: true,
                    success: "valid",
                    minlength: 5,
                    equalTo: "#password"
                },
                address1: "required",
                city: "required",
                province: "required",

                dob: {
                    required: true,
                    date: true,
                    success: "valid"
                },


                captcha_code: {
                    required: true,
                    captcha_code: true,
                    remote: "checkCaptcha.php"      
                }   

            },
            messages: {
               email:{
                   remote: "This email is already registered! One registration per email address."
               },
               captcha_code:{
                  remote: "Enter the right captcha value!."
               }
            },
            onsubmit: true
        });
    });

最佳答案

我想问的是,您是否已将验证码作为一种方法来实现?在 captcha_code: true, 中。

 captcha_code: {
      required: true,
      captcha_code: true,
      remote: "checkCaptcha.php"      
 }   

像这样

jQuery.validator.addMethod("captcha_code", function(value, element) {
    return (this.optional(element) || /* do something */ );
}, "");

我找到了这个验证码演示,它没有验证码作为方法,只有必需的和远程的。所以我在想你是否实现了它。

这是演示中的脚本。 http://jquery.bassistance.de/validate/demo/captcha/

$(function(){
$("#refreshimg").click(function(){
    $.post('newsession.php');
    $("#captchaimage").load('image_req.php');
    return false;
});

$("#captchaform").validate({
    rules: {
        captcha: {
            required: true,
            remote: "process.php"
        }
    },
    messages: {
        captcha: "Correct captcha is required. Click the captcha to generate a new one" 
    },
    submitHandler: function() {
        alert("Correct captcha!");
    },
    success: function(label) {
        label.addClass("valid").text("Valid captcha!")
    },
    onkeyup: false
});

});

关于javascript - 远程验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2106167/

相关文章:

javascript - 未满足的对等依赖生成器-karma@>=0.9.0

javascript - 即使文本相同,在 aria-live 下重新宣布 <p>

javascript - thymeleaf 表达式

jQuery 单击停止传播

Javascript防止点逗号等

javascript - 根据元素的颜色验证表单是一个好习惯吗?

javascript - 将 DOM 元素移动到新窗口并在 IE 11 中维护事件监听器

javascript - 如何等待 webfonts 加载?

jquery - youtube-video 后面的下拉菜单

WPF:将属性绑定(bind)到自定义 UserControl