<input type="password" value="" id="pwd" class="Rectangle-1188 pwd" oninput="WidthCheckPassword(this,64)" />
//限制只能输入数字、字母、指定字符和输入长度
function WidthCheckPassword(str, maxLen) {
    var w = 0;
    var tempCount = 0;
    str.value = str.value.replace(/[^"!#$%&'()*+,-.:;<=>{~|^\\}`\x5B\x5D_?@/A-Za-z0-9]/g, ''); //  ^ 表示(否)取反,此处正则表示匹配不是^号后面的字符一律替换掉;不能放正则里的特殊字符可以用16进制代替,比如\x5B\x5D为[]
    //length 获取字数数
    for (var i = 0; i < str.value.length; i++) {
        //charCodeAt()获取字符串中某一个字符的编码 
        var c = str.value.charCodeAt(i);
        //单字节加1 
        if ((c >= 0x0001 && c <= 0x007e) || (0xff60 <= c && c <= 0xff9f)) {
            w++;
        } else {
            w += 2;
        }
        if (w > maxLen) {
            str.value = str.value.substr(0, i);
            break;
        }
    }
}
//限制输入中文、中文符号、单引号和)和输入长度
function WidthCheckPassword1(str, maxLen) {
    var w = 0;
    var tempCount = 0;
    str.value = str.value.replace(/['')!¥……()——、【】?《》。,:;“”·‘’]/g, "");
    str.value = str.value.replace(/[\u4e00-\u9fa5]/g, ;
    //length 获取字数数
    for (var i = 0; i < str.value.length; i++) {
        //charCodeAt()获取字符串中某一个字符的编码 
        var c = str.value.charCodeAt(i);
        //单字节加1 
        if ((c >= 0x0001 && c <= 0x007e) || (0xff60 <= c && c <= 0xff9f)) {
            w++;
        } else {
            w += 2;
        }
        if (w > maxLen) {
            str.value = str.value.substr(0, i);
            break;
        }
    }
}
 
 
//正则匹配正确按钮可点,不正确按钮失能
$('#pwd').keyup(function() {
var reg = /^[\da-zA-Z!@#$%|+-^&*.~]{8,64}$/; //数字、字母、特殊字符
if (reg.test($(this).val())) {
$("#btn").removeAttr("disabled");
$("#btn").css("opacity", "1");
} else { $("#btn").attr("disabled", "disabled");
$("#btn").css("opacity", "0.5");
}
})

最新文章

  1. Android反编译(二)之反编译XML资源文件
  2. [Tools] Eclipse XML 注释和撤销注释
  3. 20145337 《Java程序设计》第九周学习总结
  4. git server服务器搭建
  5. UWP深入学习四:动画及图像
  6. [转]Java中的对象和对象引用实例浅析
  7. ssh: connect to host localhost port 22: Connection refused 问题
  8. selenium Gird
  9. javascript操作class和style样式
  10. 问题-delphi 程序在某电脑中显示???问号 乱码
  11. uva 10929 - You can say 11
  12. unity3d银联支付出现闪退
  13. 如何得到AdoConnection.execute(sqlstr)执行的返回结果
  14. .NET Core 2.0 问题杂记
  15. [HNOI2004]敲砖块
  16. XML,json,ajax
  17. Android : 跟我学Binder --- (6) JAVA实现
  18. 未能加载或程序集“XXXX,Version=0.0.0.0,Culter=neutral,PublicKeyToken=null”或它的某一个依赖项。试图加载格式不正确的程序。
  19. 【github&amp;&amp;git】5、使用Git拉取GitLab上的项目
  20. java对mongodb的and, in, or 经常使用操作

热门文章

  1. NC14501 大吉大利,晚上吃鸡!
  2. python之路39 前端开始 各种标签
  3. vulnhub靶场之VULNCMS: 1
  4. LeetCode-343. 整数拆分 - 题解分析
  5. TypeDB Forces 2023 (Div. 1 + Div. 2, Rated, Prizes!) A-E
  6. 获取对象的方式-Calendar类的常用成员方法
  7. KingbaseES数据库目录结构
  8. 基于APIView&amp;ModelSerializer写接口
  9. 2021级《JAVA语言程序设计》上机考试试题
  10. Postman操作指南