jquery.validate自定义验证方法(检验邮箱是否存在)

本文主要是介绍jquery.validate自定义验证方法(检验邮箱是否存在),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.前端页面代码

<form method="post" id="registerInfo" action="${ctx }/user/register">
            <div class="accountInfoTitle"><div class="accountInfoTitleText">Create Your Account</div><div class="accountInfoTitleLine"></div></div>
            <div class="email">
                <div class="boxname"><span>*</span>Email:</div>
                <div><input  type="text" name="email" value="${user.email }" id="email"/></div>
            </div>

             <div class="submit">
                <input type="submit" value="Create My Account" id="registersubmit" οnclick="registerCheck()"/>
            </div>

</form>

2.javascript脚本

//注册信息验证
$(function(){
    //自定义检验邮箱是否存在的方法
    $.validator.addMethod(
            "checkEmailIsExsited",
            function(value,element,param){
                var a=checkEmail(value);
                if(a=="1"){
                    alert(1);
                }else{
                    alert(0);
                }
            }
    );
    $("#registerInfo").validate({
        submitHandler:function(form){
            $.cookie("email", decodeURI($("#email").val()),"{expires:7,secure:true}");
            form.submit();
        } ,
        rules:{
            email:{
                required:true,
                email:true,
                remote:{
                      url: "checkEmail",     //后台处理程序
                      type: "POST",               //数据发送方式
                      dataType: "json",           //接受数据格式   
                      data: {                     //要传递的数据
                          email: function() {
                           return $("#email").val();
                          }
                      }
                 }
            },
            password:{
                required:true,
                minlength:6
            },
            repassword:{
                required:true,
                equalTo: "#password"
            },
            companyAddress:{
                required:true
            },
            bizContactor:{
                required:true
            },
            companyName:{
                required:true
            },
            phoneNo:{
                required:true
            },
            codeShow:{
                required:true
            }
        },
        messages:{
            email:{
                required:"Account field is required.",
                email:"Please enter a valid email address.",
                remote:"This Email has been registered, you can <a href='${ctx}/user/toLogin'>[ login ]</a>"
            },
            password:{
                required:"Password field is required.",
                minlength:"Password length must be greater than 6."
            },
            repassword:{
                required:"Confirm Password field is required.",
                equalTo: "Please enter the same value again."
            },
            companyAddress:{
                required:"Company address field is required."
            },
            bizContactor:{
                required:"BizContactor field is required."
            },
            companyName:{
                required:"Company name field is required."
            },
            phoneNo:{
                required:"Phone number field is required."
            },
            codeShow:{
                required:"Please enter verification code."
            }
        },
        errorElement: "em",
        focusInvalid: true,
        success: function(em) {
            em.text("").addClass("success");
        }
    });
});

3.后台java代码

/**
     * 检验邮箱是否存在
     *
     * @return
     * @author ZuoChangjun 2014-11-27 15:02:54
     */
    @RequestMapping({ "/checkEmail" })
    public String checkEmail(@RequestParam String email,HttpServletResponse response) {
        PrintWriter pw = null;
        try {
            User user = userService.selectByEmail(email);
            pw = response.getWriter();
            if (user == null) {
                pw.print("true");     //此处需要注意   为字符形式的true/false
            } else {
                pw.print("false");
            }
        } catch (Exception e) {
            LOG.error(e.getMessage(), e);
            return ErrorPages._500;
        } finally {
            if (pw != null) {
                pw.close();
            }
        }
        return null;
    }

      

这篇关于jquery.validate自定义验证方法(检验邮箱是否存在)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1026102

相关文章

SpringBoot+EasyExcel实现自定义复杂样式导入导出

《SpringBoot+EasyExcel实现自定义复杂样式导入导出》这篇文章主要为大家详细介绍了SpringBoot如何结果EasyExcel实现自定义复杂样式导入导出功能,文中的示例代码讲解详细,... 目录安装处理自定义导出复杂场景1、列不固定,动态列2、动态下拉3、自定义锁定行/列,添加密码4、合并

Java中读取YAML文件配置信息常见问题及解决方法

《Java中读取YAML文件配置信息常见问题及解决方法》:本文主要介绍Java中读取YAML文件配置信息常见问题及解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要... 目录1 使用Spring Boot的@ConfigurationProperties2. 使用@Valu

Java 方法重载Overload常见误区及注意事项

《Java方法重载Overload常见误区及注意事项》Java方法重载允许同一类中同名方法通过参数类型、数量、顺序差异实现功能扩展,提升代码灵活性,核心条件为参数列表不同,不涉及返回类型、访问修饰符... 目录Java 方法重载(Overload)详解一、方法重载的核心条件二、构成方法重载的具体情况三、不构

Java通过驱动包(jar包)连接MySQL数据库的步骤总结及验证方式

《Java通过驱动包(jar包)连接MySQL数据库的步骤总结及验证方式》本文详细介绍如何使用Java通过JDBC连接MySQL数据库,包括下载驱动、配置Eclipse环境、检测数据库连接等关键步骤,... 目录一、下载驱动包二、放jar包三、检测数据库连接JavaJava 如何使用 JDBC 连接 mys

SQL中如何添加数据(常见方法及示例)

《SQL中如何添加数据(常见方法及示例)》SQL全称为StructuredQueryLanguage,是一种用于管理关系数据库的标准编程语言,下面给大家介绍SQL中如何添加数据,感兴趣的朋友一起看看吧... 目录在mysql中,有多种方法可以添加数据。以下是一些常见的方法及其示例。1. 使用INSERT I

Python中反转字符串的常见方法小结

《Python中反转字符串的常见方法小结》在Python中,字符串对象没有内置的反转方法,然而,在实际开发中,我们经常会遇到需要反转字符串的场景,比如处理回文字符串、文本加密等,因此,掌握如何在Pyt... 目录python中反转字符串的方法技术背景实现步骤1. 使用切片2. 使用 reversed() 函

Python中将嵌套列表扁平化的多种实现方法

《Python中将嵌套列表扁平化的多种实现方法》在Python编程中,我们常常会遇到需要将嵌套列表(即列表中包含列表)转换为一个一维的扁平列表的需求,本文将给大家介绍了多种实现这一目标的方法,需要的朋... 目录python中将嵌套列表扁平化的方法技术背景实现步骤1. 使用嵌套列表推导式2. 使用itert

Python使用pip工具实现包自动更新的多种方法

《Python使用pip工具实现包自动更新的多种方法》本文深入探讨了使用Python的pip工具实现包自动更新的各种方法和技术,我们将从基础概念开始,逐步介绍手动更新方法、自动化脚本编写、结合CI/C... 目录1. 背景介绍1.1 目的和范围1.2 预期读者1.3 文档结构概述1.4 术语表1.4.1 核

在Linux中改变echo输出颜色的实现方法

《在Linux中改变echo输出颜色的实现方法》在Linux系统的命令行环境下,为了使输出信息更加清晰、突出,便于用户快速识别和区分不同类型的信息,常常需要改变echo命令的输出颜色,所以本文给大家介... 目python录在linux中改变echo输出颜色的方法技术背景实现步骤使用ANSI转义码使用tpu

Conda与Python venv虚拟环境的区别与使用方法详解

《Conda与Pythonvenv虚拟环境的区别与使用方法详解》随着Python社区的成长,虚拟环境的概念和技术也在不断发展,:本文主要介绍Conda与Pythonvenv虚拟环境的区别与使用... 目录前言一、Conda 与 python venv 的核心区别1. Conda 的特点2. Python v