Heim  >  Artikel  >  Web-Frontend  >  jquery ermittelt, ob das zweimal eingegebene Passwort equal_jquery ist

jquery ermittelt, ob das zweimal eingegebene Passwort equal_jquery ist

WBOY
WBOYOriginal
2016-05-16 15:28:222339Durchsuche

Jquery easyui ist ein sehr gutes UI-Framework, aber es gibt keine am häufigsten verwendete Überprüfung bei der Formularvalidierung, um festzustellen, ob die Werte in zwei Ausgabefeldern gleich sind, daher habe ich eine Erweiterung vorgenommen.

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

Anwendungsbeispiel:

密码: <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="两次输入密码不匹配"/> 

Geben Sie einfach das validType-Attribut als equalTo['#password'] an.
Um dieses kleine Plug-In verwenden zu können, müssen Sie natürlich zunächst auf die js-Bibliothek von jquery easyui verweisen.

Bei der Verwendung von jQuery.validate ist ein kleines Problem aufgetreten, um zu überprüfen, ob die beiden Passwörter im Formular konsistent sind. Dies ist der Code, den ich geschrieben habe:

$("#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: "*请输入手机号码"
          }
        }
      });

Warum fragst du mich immer wieder, obwohl die beiden Passwörter, die ich eingegeben habe, gleich sind? Dies gilt auch nach dem Ausprobieren verschiedener Browser und verschiedener Validierungsversionen.

Ich weiß nicht, ob jemand auf ähnliche Probleme gestoßen ist. Ich habe viele Artikel überprüft und die Ideen zur Lösung des Problems zusammengefasst:

  • Überprüfen Sie zunächst, ob den beiden Passworttypen der HTML-Seite IDs zugeordnet sind.
  • Oder suchen Sie, ob auf der Seite zwei txtPass-IDs vorhanden sind.
  • Oder Sie können equalTo zuerst entfernen, erneut überprüfen, ob andere Fehler vorliegen, und dann zur Fehlerbehebung an dieser Stelle zurückkehren.

Ich hoffe, dieser Artikel kann Ihnen etwas Inspiration geben. Vielen Dank für das Lesen. Ich werde auf jeden Fall weiter hart arbeiten.

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn