Maison  >  Article  >  interface Web  >  jquery détermine si le mot de passe saisi deux fois est égal_jquery

jquery détermine si le mot de passe saisi deux fois est égal_jquery

WBOY
WBOYoriginal
2016-05-16 15:28:222339parcourir

Jquery easyui est un très bon framework d'interface utilisateur, mais il n'existe pas de vérification la plus couramment utilisée dans la validation de formulaire pour déterminer si les valeurs dans deux zones de sortie sont égales, j'ai donc créé une extension.

$.extend($.fn.validatebox.defaults.rules, {  
  /*必须和某个字段相等*/ 
  equalTo: { 
    validator:function(value,param){ 
      return $(param[0]).val() == value; 
    }, 
    message:'字段不匹配' 
  } 
       
}); 

Exemple d'utilisation :

密码: <input id="password" name="password" validType="length[4,32]" class="easyui-validatebox" required="true" type="password" value=""/> 
<br/> 
确认密码:<input type="password" name="repassword" id="repassword" required="true" class="easyui-validatebox" validType="equalTo['#password']" invalidMessage="两次输入密码不匹配"/> 

Spécifiez simplement l'attribut validType comme égalTo['#password'].
Bien entendu, pour utiliser ce petit plug-in, vous devez au préalable référencer la bibliothèque js de jquery easyui.

J'ai rencontré un petit problème lors de l'utilisation de jQuery.validate pour vérifier si les deux mots de passe du formulaire sont cohérents. Voici le code que j'ai écrit :

$("#aspnetForm").validate({
        rules: {
          txtName: {
            required: true
          },
          txtTrueName: {
            required: true
          },
          txtPass: {
            required: true,
            minlength: 3
          },
          txtTwoPass: {
            required: true,
            minlength: 3,
            equalTo: "#txtPass"
          },
          txtEmail: {
            required: true,
            email: true
          },
          txtAddress: {
            required: true
          },
          txtPhone: {
            required: true
          }
        },
        messages: {
          txtName: {
            required: "*请输入用户名"
          },
          txtTrueName: {
            required: "*请输入姓名"
          },
          txtPass: {
            required: "*请输入密码",
            minlength: "*密码不能小于3个字符"
          },
          txtTwoPass: {
            required: "*请输入确认密码",
            minlength: "*密码不能小于3个字符",
            equalTo: "*请再次输入相同的值"
          },
          txtEmail: {
            required: "*请输入邮箱",
            email: "*请输入正确的邮箱格式"
          },
          txtAddress: {
            required: "*请输入地址"
          },
          txtPhone: {
            required: "*请输入手机号码"
          }
        }
      });

Pourquoi continuez-vous à me demander alors que les deux mots de passe que j'ai saisis sont identiques ? Cela est vrai même après avoir essayé différents navigateurs et différentes versions de validate.

Je ne sais pas si quelqu'un a rencontré des problèmes similaires. J'ai consulté de nombreux articles et résumé les idées pour résoudre le problème :

  • Vérifiez d'abord si les deux types de mots de passe de la page HTML se voient attribuer des identifiants.
  • Ou recherchez s'il y a deux identifiants txtPass sur la page.
  • Ou vous pouvez d'abord supprimer equalTo, revérifier pour voir s'il y a d'autres erreurs et revenir pour dépanner cet endroit.

J'espère que cet article pourra vous inspirer. Merci d'avoir lu, je vais certainement continuer à travailler dur.

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