js对输入文字个数的限制...
发表留言或者微博的时候,对输入文字个数的限制,下面分两种情况,每种分别介绍两种实现方式:
第一种:一个汉字算一位,两个字母或符号算一位。
通过ASCII编码来判断
textarea.onkeyup = function(){
//[^\x00-\xff]即ASCII编码不在0-255的字符,也就是汉子了,先把所有汉子换成任意两个字符,最后除以2,得到一个字符
var n = 150- Math.floor(this.value.replace(/[^\x00-\xff]/g,"aa").length/2)
span.innerHTML = n <=0 ? 0 : n;
};
通过charCodeAt编码来判断
//键盘up的时候判断
textarea.onkeyup = function(){
var n = 1 ; //字母或符号累加判断
var num = 0; //总个数累加判断
for (var i = 0; i < this.value.length; i++) {
//根据charCodeAt来判断输入的是中文还是字母,符号
charCode = this.value.charCodeAt(i);
if (charCode >= 0 && charCode <= 128){
//通过n模2来判断输入两次累加
n++;
if(n%2 == 0) num += 1;
}else{
num += 1;
}
};
span.innerHTML = 150-num <=0 ? 0 : 150-num;
};
另一种:是一个汉字算两位,一个字母或者符号算一位
通过ASCII编码来判断
textarea.onkeyup = function(){
//[^\x00-\xff]即ASCII编码不在0-255的字符,也就是汉子了,先把所有汉子换成任意两个字符
var n = 150- this.value.replace(/[^\x00-\xff]/g,"aa").length
span.innerHTML = n <=0 ? 0 : n;
};
通过charCodeAt编码来判断
//键盘up的时候判断
textarea.onkeyup = function(){
var num = 0; //总个数累加判断
for (var i = 0; i < this.value.length; i++) {
//根据charCodeAt来判断输入的是中文还是字母,符号
charCode = this.value.charCodeAt(i);
if (charCode >= 0 && charCode <= 128){
//字符就+1
num += 1;
}else{
//汉子就+2
num += 2;
}
};
span.innerHTML = 150-num <=0 ? 0 : 150-num;
};
js对输入文字个数的限制...的更多相关文章
- js 控制输入文字个数(换行不算)
如题,换行符在textarea中是要当成一个字符的.用普通的maxlength属性就不行了,于是想到通过事件来控制输入文字的长度. 注意哦,回车换行不能算成字符.这样的话,普通的substring等方 ...
- js实现文本框输入文字个数限制代码
html: <div class="curr_eval_box"> <input type="hidden" n ...
- jquery判断输入文字个数的统计代码
1.js代码部分 <script type="text/javascript"> $(function() { function albumNa ...
- js统计输入文字的字节数(byte)
这里主要考虑的是日文,日文中包含了半角和全角文字,半角算1,全角算2. <html> <head> <script language="javascript&q ...
- iType.js仿输入文字效果
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- js 控制输入文字的字数
直接上代码. <html> <head> </head> <body> <textarea id='txtArea' cols='50' rows ...
- textarea输入文字限制个数
说明: w-count固定为数字部分的class textarea-active为超出最大输入文字个数报错信息的class html 部分: <div class="wrap wrap ...
- jquery统计输入文字的个数并对其进行判断
<textarea placeholder="该产品满足你的期待吗?说说你的使用心得,分享给 同样看中的他们吧"></textarea> <span ...
- iOS webView与js交互在文本空格上输入文字
项目要求:webview加载html网址,内容为填空题型文本,需要在横线上添加答案,并点击提交按钮后再将答案进行回显 正常加载的效果图片: 这个是用js交互后的效果图: 点击空格,输入想输入的答案,如 ...
随机推荐
- 数据库的join查询
假设我们有两张表. Table A 是左边的表. Table B 是右边的表. 其各有四条记录,其中有两条记录是相同的,如下所示: id name id name -- ---- -- ---- 1 ...
- docker 安装与常用命令与常用容器(containers)环境
注意区别 container 与 image 的关系,container 的建立需要 image 的承载,也即 container 依赖 image,停止并删除了 container 并不会删除 im ...
- django models class 不识别问题解决方案
目录 1. 事情起因 2. 排查经过 3. 总结 1. 事情起因 今天在写代码的时候,在django 的models目录中新增了一个pkg.py文件,里面定义了一个class, 在执行 makemig ...
- 【LeetCode】024. Swap Nodes in Pairs
Given a linked list, swap every two adjacent nodes and return its head. For example,Given 1->2-&g ...
- BZOJ1206:[HNOI2005]虚拟内存
我对模拟的理解:https://www.cnblogs.com/AKMer/p/9064018.html 题目传送门:https://www.lydsy.com/JudgeOnline/problem ...
- HDOJ1022(模拟栈)
Train Problem I Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)T ...
- hibernate HQL查询
hql(都要在事务中完成)session.beginTransaction();session.getTransaction().commit(); session.beginTransaction( ...
- python操作sql server2008 pyodbc
使用Python通过PyODBC连接数据的注意事项 今天使者用PyODBC连接数据库,试了很久才出来,现把一些心得体会和大家分享! 一.PyODBC的下载地址: http://code.google. ...
- Android源码中添加APP
参考罗升阳<Android系统源代码情景分析> 在Android源码中,我们通常把实验性质的Android APP放在packages/experimental目录下.对于一个简单的应用程 ...
- 使用jpa报No query defined for that name错误
今天使用jpa创建本地查询时出现Java.lang.IllegalArgumentException: No query defined for that name..... 一个很sb的问题,调用e ...