js限制input输入的最大字节

    xiaoxiao2023-11-25  157

    项目中遇到的问题是要求输入的最大字节是10个,但是input自带的maxlength不能实现,正则表达式也不好实现,所以看到别人的一种写法,感觉很好用,所以记录下来

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <script> function WidthCheck(str, maxLen){ var w = 0; var tempCount = 0; //length 获取字数数,不区分汉子和英文 for (var i=0; i<str.value.length; i++) { //charCodeAt()获取字符串中某一个字符的编码 var c = str.value.charCodeAt(i); console.log(c); //单字节加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; alert('超过'); } } } </script> <input type="text" id="nickname" class="nickname" value="" onkeyup="WidthCheck(this,10);"/> </body> </html>

     

    最新回复(0)