js 限制输入框的字节数,中文两个字节,英文字母一个字节
来源:互联网 发布:vue vendor.js 编辑:程序博客网 时间:2024/05/17 01:59
也许在网上有很多类似的文章,但是这里大家应该知道,js里面,中文和字母的长度都是1,但是数据库不知道呀,数据库很多都是按照字节来的,所以,控制输入框的字节数看来比长度限制更为重要。
提出问题:
1、限制文本框为16个字节,只能输入中文和字母
解决思路:
1、判断只能是中文和英文
2、判断长度只能为16
3、有一个不符合,将进入循环:
第一步:替换掉所有的#,因为我后面要用到这个特殊字符
第二步:将所有的中文替换为:@@
第三步:截取0-20的字节长度,这里中文已经转成两个长度了
第四步:将所有的@@转换成#
第五步:替换掉最后可能出现的中文的半个字节,一个@
第六步:获取最后剩的字符长度,也就是要截取的字符串的长度
<!DOCTYPE html><html><head lang="en"> <meta charset="UTF-8"> <title></title> <script src="http://libs.baidu.com/jquery/2.0.0/jquery.js"></script></head><body><input type="text" id="input"/><script> $('#input').on('keyup keydown', function () { var $this = $(this); var str = $this.val(); var limitLen = 16; var sign = /[\u3002|\uff1f|\uff01|\uff0c|\u3001|\uff1b|\uff1a|\u201c|\u201d|\u2018|\u2019|\uff08|\uff09|\u300a|\u300b|\u3008|\u3009|\u3010|\u3011|\u300e|\u300f|\u300c|\u300d|\ufe43|\ufe44|\u3014|\u3015|\u2026|\u2014|\uff5e|\ufe4f|\uffe5]/g; var flag = /^[\u4e00-\u9fa5a-zA-Z]+$/.test(str) && str.replace(/[\u4e00-\u9fa5]/g, '@@').length <= limitLen ? true : false; if (!flag) { var convertStr = str.replace(sign,'').replace(/#/g,'').replace(/[\u4e00-\u9fa5]/g, '@@').substr(0, limitLen); var len = convertStr.replace(/@@/g, '#').replace('@', '').length; var val = str.substring(0, len); $this.val(val); } });</script></body></html>
0 0
- js 限制输入框的字节数,中文两个字节,英文字母一个字节
- NGUI的Input输入框限制中文字节数问题
- JS 判断输入字符串的长度(中文占用两个字节,英文占用一个字节)
- 解决文本框中输入字符限制---精确控制中文占两个字节,英文占一个字节~
- input输入框限制输入字节数
- js 计算输入框的字节数
- 一个用js限制用户输入字节个数的问题.
- 一个用js限制用户输入字节个数的问题.
- 限制EditText 输入的字节数
- 得到字节数,英文为两个的,中文为一个
- [Unity3d]NGUI的INPUT输入框限制中文字节数问题
- 一个中文字符占用的字节数
- ******英文字母和中文汉字在不同字符集编码下的字节数 英文字母:******
- 得到输入框的字节数
- 一个英文字母,一个中文各占多少字节?
- 一个英文字母,一个中文各占多少字节?
- 汉字占两个字节,字符占一个字节,不设定宽度限制文本的长度
- 限制文本字节数的JS源代码程序
- ios 音频队列实现录音和播音(转)
- ASP.NET @Page指令属性(vs2010)
- 机房收费系统个人版重构——报表制作
- Android开发中给服务器发送Http请求获取响应
- detached entity passed to persist: com.china.user.entity.Employee
- js 限制输入框的字节数,中文两个字节,英文字母一个字节
- [UOJ35]后缀排序 做题笔记
- Window环境WordPress部署
- poj1014 Dividing 多重背包DP+神剪枝
- 线程状态转换图
- WPF-DataTemplate创建数据模版
- java并发编程基础之线程安全
- acm 1000 Moving Tables(贪心算法)
- k--Means