Maison >interface Web >js tutoriel >Introduction à la validation Jquery Validate et exemples de code de validation de formulaire jQuery

Introduction à la validation Jquery Validate et exemples de code de validation de formulaire jQuery

不言
不言original
2018-08-14 17:01:451438parcourir

Cet article vous présente une introduction à la vérification Jquery Validate et des exemples de code de vérification de formulaire jQuery. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer.

Validation du framework JQuery : valider le framework

Jquery Valider les règles de validation

( 1)required:true Champ obligatoire
(2)remote:”check.PHP” Utilisez la méthode ajax pour appeler check.php pour vérifier la valeur d'entrée
(3)email:true Vous devez saisir un e-mail dans le format correct
(4)url:true Vous devez saisir l'URL au format correct
(5)date:true Vous devez saisir la date au format correct
(6)dateISO:true Vous devez saisir la date (ISO) au format correct, par exemple : 2009-06-23, 1998/01/22 Vérifiez uniquement le format, pas la validité
(7)number:true Il faut saisir des nombres légaux (nombres négatifs, décimaux )
(8)digits:true Doit saisir des entiers
(9)creditcard : Vous devez saisir un numéro de carte de crédit légal
(10)equalTo:"#field" La valeur saisie doit être la même que # field
(11)accepter : saisir une chaîne avec un suffixe légal (suffixe du fichier téléchargé)
(12)maxlength:5 saisir une chaîne d'une longueur maximale de 5 (les caractères chinois comptent pour un caractère)
(13)minlength:10 Saisissez une chaîne d'une longueur minimale de 10 (les caractères chinois comptent pour un caractère) )
(14)rangelength:[5,10] La longueur de saisie doit être comprise entre 5 et 10") (Les caractères chinois comptent pour un caractère)
(15)range:[5,10] La valeur d'entrée doit être comprise entre 5 et 10
(16)max:5 La valeur d'entrée ne peut pas être supérieure à 5
( 17)min:10 La valeur d'entrée ne peut pas être inférieure à 10

Jquery Validate Règles de validation personnalisées

méthode addMethod(name, method, message) :
La nom du paramètre est le nom de la méthode ajoutée
La méthode paramètre est une fonction qui reçoit trois paramètres (valeur, élément, param ) valeur est la valeur de l'élément, élément est l'élément lui-même param
est le paramètre, nous pouvons utiliser addMethod pour ajouter des méthodes de validation autres que les méthodes de validation intégrées. Par exemple, s'il y a un champ, seul
peut saisir une lettre, plage C'est a-f, écrit comme suit :

$.validator.addMethod(“af”,function(value,element,params){
if(value.length>1){
return false;
}
if(value>=params[0] && value<=params[1]){
return true;
}else{
return false;
}
},”必须是一个字母,且a-f”);
用的时候,比如有个表单字段的id=”username”,则在rules 中写
username:{
af:["a","f"]
}
<.>Le premier paramètre de la méthode

addMethod est le nom de la méthode de vérification ajoutée. À l'heure actuelle, il s'agit du troisième paramètre de af
addMethod, qui est une invite d'erreur personnalisée, l'invite ici est : "Doit être". une lettre, et a-f"
Le deuxième paramètre de addMethod est une fonction, qui est plus importante et détermine la méthode d'écriture lors de l'utilisation de cette méthode de vérification
S'il n'y a qu'un seul paramètre, écrivez-le directement. Si af : " a", alors a est le seul paramètre. Si plusieurs paramètres sont utilisés dans [], séparez-les par des virgules

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <style>
        .error{
            color: red;
        }
    </style>


<script src="js/jquery.min.js"></script>
<!-- 导入的框架 -->
<script src="js/jquery.validate.min.js"></script>
<script>
    $(function(){
        $(&#39;#a&#39;).validate({
            rules:{
                username:{
                    required:true
                },
                password_1:{
                    required:true,
                    rangelength:[5,10],

                },
                password_2:{
                    required:true,
                    equalTo:&#39;#pa&#39;
                },
                sex:{
                    required:true
                },
                you:{
                    required:true,
                    email:true
                },

            },
            messages:{
            username:{
                required:&#39;字段不能为空&#39;
               },
               password_1:{
                required:&#39;字段不能为空&#39;,
                rangelength:&#39;密码长度要在5到10位&#39;,
               },
               password_2:{
                required:&#39;字段不能为空&#39;,
                equalTo:&#39;两次密码不一样&#39;
               },
               sex:{
                required:&#39;性别不能为空&#39;,
               },
               you:{
                required:&#39;邮箱不能为空&#39;,
                email:&#39;邮箱格式不对&#39;
               }
           }
        })
    })
</script>
</head>
<body>
    <form action="a.jsp" method="post" id="a">
        请输入姓名:<input type="text" name="username" ><br>
        请输入密码: <input type="password" name="password_1" id="pa"><br>
        确认密码: <input type="password" name="password_2" ><br>
      
        性别: <input type="radio" name="sex" value="男">男
             <input type="radio" name="sex" value="女">女
             <label for="sex" generated="true"></label><br>
             邮箱: <input type="text" name="you" ><br>
             <input type="submit" value="submit">
    </form>
</body>
</html>
Le deuxième type est une vérification de formulaire écrite avec l'événement js Blur :

<!DOCTYPE html>
<html>

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>
<style>
    /* form{
      margin-left:400px;
  } */
</style>
<script src="js/jquery.min.js"></script>

<script>
    $(function () {
        var a = b = c = d = e = f = g = false;
        $("#tables").css({ "border": &#39;1px solid blue&#39;, &#39;text-align&#39;: &#39;center&#39; }).css("width", "800").css("height", "400px")
        $(&#39;td&#39;).css({ "border": "1px solid blue" })
        $("#td1").css({ &#39;width&#39;: &#39;100&#39; })
        $("#td2").css({ "width": "400" })
        $("#td3").css({ "width": "300" })
        // 设置id a的颜色 
        $(&#39;span&#39;).css(&#39;color&#39;, &#39;red&#39;)
        //登录名的验证
        $("input[name=&#39;username&#39;]").blur(function () {
            var va = $(this).val();
            var char = va.charCodeAt(0);
            //alert(va);
            if (va == "") {
                a = false;
                // $(this).click(function(){
                //     $(&#39;#a&#39;).css(&#39;background&#39;,&#39;blue&#39;).css(&#39;width&#39;,&#39;100px&#39;)
                // })        
                $(&#39;#a&#39;).html(function () {
                    return "值不能为空";
                })
            }
            else if (va.length < 6) {
                a = false;
                $(&#39;#a&#39;).html(&#39;登录名不能少于6个字&#39;)
            }
            else if (!((char >= 65 && char <= 90) || (char >= 97 && char <= 122))) {
                a = false;
                $(&#39;#a&#39;).html(&#39;登录名的首字母只能为字母&#39;)
            }
            else {
                a = true;
                $(&#39;#a&#39;).html(function () {
                    return &#39;&#39;;
                })
            }
        })
        //验证姓氏
        $("input[name=&#39;xing&#39;]").blur(function () {
            var xing = $(this).val();
            if (xing == &#39;&#39;) {
                b = false;
                $(&#39;#b&#39;).html(&#39;值不能为空&#39;)
            }
            else if(xing.length>6){
                b=false;
                $(&#39;#b&#39;).html(&#39;你的姓氏不符合要求,字符长度超过6&#39;)
            }
            else{
                b=true;
                $(&#39;#b&#39;).html(function(){
                    return &#39;&#39;;
                })
            }
        })
        //验证密码
        $(&#39;#password_1&#39;).blur(function(){
            var va=$(&#39;#password_1&#39;).val();
            if(va==&#39;&#39;){
                c=false;
                $(&#39;#c&#39;).html(&#39;密码不能为空&#39;)
            }
           else if(va.length<8){
                c=false;
                $(&#39;#c&#39;).html(&#39;你的密码不足8位数不符合要求&#39;)
            }
            else{
                c=true;
                $(&#39;#c&#39;).html(&#39;&#39;);
            }
        })
        //密码重复验证
        $(&#39;#password_2&#39;).blur(function(){
            //拿到本身的密码
            var va1=$(this).val();
            //拿到之前的密码
            var va2=$(&#39;#password_1&#39;).val();
            if(va1==&#39;&#39;){
                d=false;
                $(&#39;#d&#39;).html(&#39;密码不能为空&#39;)
            }
            else if(va1!=va2){
                d=false;
                $(&#39;#d&#39;).html(&#39;两次密码不正确&#39;)
            }
            else{
                d=true;
                $(&#39;#d&#39;).html(&#39;&#39;)
            }
        })
        //性别选择直接选中下下标为1的
        $(&#39;input[name=sex]:eq(1)&#39;).prop(&#39;checked&#39;,&#39;checked&#39;)
        $(&#39;input[name=sex]&#39;).blur(function(){

        })
        //年验证
        $(&#39;#year&#39;).blur(function(){
            //拿到年的值
            var va=$(this).val();
            // var v=Number(va);
           //alert(va)
           var s=/^[0-9]+$/;
            if(va==&#39;&#39;){
                f=false;
                $(&#39;#f&#39;).hmtl(&#39;年不能为空&#39;)
            }
            // else if(!s.test(va)){
            //     f=false;
            //     $(&#39;#f&#39;).hmtl(&#39;年只能是数字&#39;)
            // }
            else if(isNaN(va)){
                f=false;
                $(&#39;#f&#39;).html(&#39;年只能是数字&#39;)
            }
            else if(va.length!=4){
                f=false;
                $(&#39;#f&#39;).html(&#39;值必须为4位数&#39;)
            }
            else{
                f=true;
                $(&#39;#f&#39;).html(&#39;&#39;) 
            }

        })
    //天数验证
    $("input[name=&#39;day&#39;]").blur(function(){
        var va=$(this).val();
        var t = /^(([1-9])|((1|2)[0-9])|30|31)$/; 
        if(va===&#39;&#39;){
            g=false;
            $(&#39;#f&#39;).html(&#39;天数不能为空&#39;)
        }
        else if(! t.test(va)){
            g=false;
            $(&#39;#f&#39;).html(&#39;对不起,天数必须在 1-31 之间!&#39;)
        }else{
            g=true;
            $(&#39;#f&#39;).html(&#39;&#39;) 
        }
    })
    $(&#39;#su&#39;).click(function(){
      return  a&&b&&c&&d&&f&&g
    })

    })
</script>

<body>
    <form action="s">
        <table id="tables">
            <tr>
                <td colspan="3">
                    <img src="images/d.png" alt="">
                </td>

            </tr>
            <tr>
                <td id="td1">登录名</td>
                <td id="td2">
                    <input id="input1" type="text" name="username">
                </td>
                <td id="td3">
                    <span id="a"></span>
                </td>
            </tr>
            <tr>
                <td>姓氏</td>
                <td>
                    <input type="text" name="xing">
                </td>
                <td>
                    <span id="b"></span>
                </td>
            </tr>
            <tr>
                <td>密码</td>
                <td>
                    <input type="password" name="password" id="password_1">
                </td>
                <td>
                    <span id="c"></span>
                </td>
            </tr>
            <tr>
                <td>再次输入密码</td>
                <td>
                    <input type="password" name="password" id="password_2">
                </td>
                <td>
                    <span id="d"></span>
                </td>
            </tr>
            <tr>
                <td>性别</td>
                <td>
                    <input type="radio" name="sex" value="男" >男
                    <input type="radio" name="sex" value="女">女
                </td>
                <td>
                    <span id="e"></span>
                </td>
            </tr>
            <tr>
                <td>生日</td>
                <td>
                    <input type="text" name="year" id="year">
                    <select name="month" id="select_1">
                        <option value="一月" selected>一月</option>
                        <option value="二月">二月</option>
                        <option value="三月">三月</option>
                    </select>
                    <input type="text" name="day">
                </td>
                <td>
                    <span id="f"></span>
                </td>
            </tr>
            <tr>
                <td colspan="3">
                    <input type="reset" value="reset">
                </td>

            </tr>
            <tr>
                <td colspan="3">
                    <input type="submit" value="提交" id="su">
                </td>
            </tr>
        </table>
    </form>
</body>

</html>

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<style>
.error{
color: red;
}
</style>
<script src="js/jquery.min.js"></script>
<!-- 导入的框架 -->
<script src="js/jquery.validate.min.js"></script>
<script>
$(function(){
$(&#39;#a&#39;).validate({
rules:{
username:{
required:true
},
password_1:{
required:true,
rangelength:[5,10],
},
password_2:{
required:true,
equalTo:&#39;#pa&#39;
},
sex:{
required:true
},
you:{
required:true,
email:true
},
},
messages:{
username:{
required:&#39;字段不能为空&#39;
},
password_1:{
required:&#39;字段不能为空&#39;,
rangelength:&#39;密码长度要在5到10位&#39;,
},
password_2:{
required:&#39;字段不能为空&#39;,
equalTo:&#39;两次密码不一样&#39;
},
sex:{
required:&#39;性别不能为空&#39;,
},
you:{
required:&#39;邮箱不能为空&#39;,
email:&#39;邮箱格式不对&#39;
}
}
})
})
</script>
</head>
<body>
<form action="a.jsp" method="post" id="a">
请输入姓名:<input type="text" name="username" ><br>
请输入密码: <input type="password" name="password_1" id="pa"><br>
确认密码: <input type="password" name="password_2" ><br>
 
性别: <input type="radio" name="sex" value="男">男
<input type="radio" name="sex" value="女">女
<label for="sex" generated="true" class="error"></label><br>
邮箱: <input type="text" name="you" ><br>
<input type="submit" value="submit">
</form>
</body>
</html>

Recommandations associées :

validation du formulaire jquery validata DÉMO

soumission de validation du formulaire jquery

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn