Rumah  >  Artikel  >  hujung hadapan web  >  jquery menentukan sama ada kata laluan yang dimasukkan dua kali adalah equal_jquery

jquery menentukan sama ada kata laluan yang dimasukkan dua kali adalah equal_jquery

WBOY
WBOYasal
2016-05-16 15:28:222370semak imbas

Jquery easyui ialah rangka kerja UI yang sangat baik, tetapi tiada pengesahan yang paling biasa digunakan dalam pengesahan borang untuk menentukan sama ada nilai dalam dua kotak output adalah sama, jadi saya membuat sambungan.

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

Contoh penggunaan:

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

Hanya nyatakan atribut validType sebagai equalTo['#password'].
Sudah tentu, untuk menggunakan pemalam kecil ini, anda mesti terlebih dahulu merujuk perpustakaan js jquery easyui.

Saya menghadapi masalah kecil semasa menggunakan jQuery.validate untuk mengesahkan sama ada dua kata laluan dalam borang adalah konsisten Ini adalah kod yang saya tulis:

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

Mengapa anda terus menggesa saya walaupun dua kata laluan yang saya masukkan adalah sama? Ini benar walaupun selepas mencuba pelayar yang berbeza dan versi pengesahan yang berbeza.

Saya tidak tahu jika sesiapa menghadapi masalah yang sama. Saya menyemak banyak artikel dan meringkaskan idea untuk menyelesaikan masalah:

  • Mula-mula semak sama ada dua jenis kata laluan halaman html diberikan ID.
  • Atau cari sama ada terdapat dua ID txtPass pada halaman.
  • Atau anda boleh mengalih keluar equalTo dahulu, sahkan semula untuk melihat sama ada terdapat ralat lain dan kembali untuk menyelesaikan masalah tempat ini.

Saya harap artikel ini dapat memberi anda sedikit inspirasi. Terima kasih kerana membaca saya pasti akan terus berusaha.

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn