jquery判断字符输入个数(数字英文长度记为1,中文记为2,超过长度自动截取)


Posted in Javascript onOctober 15, 2010

1. $('textarea#txtPrizeNote'); //表示textarea控件名称
2. 'span' 显示剩余字数的标签
HTML:

<div> 
<textarea id="txtPrizeNote" runat="server" height="74px" width="480px" maxlength="10" 
style="width: 480px; height: 74px; float: left"></textarea> 
<span style="color: Red;">*</span><br /> 
剩余字数:<span id="showmsg" style="color: red"></span> 
</div>

<script type="text/javascript"> 
//返回val的字节长度 
function getByteLen(val) { 
var len = 0; 
for (var i = 0; i < val.length; i++) { 
if (val[i].match(/[^\x00-\xff]/ig) != null) //全角 
len += 2; 
else 
len += 1; 
} 
return len; 
} 
//返回val在规定字节长度max内的值 
function getByteVal(val, max) { 
var returnValue = ''; 
var byteValLen = 0; 
for (var i = 0; i < val.length; i++) { 
if (val[i].match(/[^\x00-\xff]/ig) != null) 
byteValLen += 2; 
else 
byteValLen += 1; 
if (byteValLen > max) 
break; 
returnValue += val[i]; 
} 
return returnValue; 
} 
$(function() { 
var _area = $('textarea#txtPrizeNote'); 
var _info = _area.next(); 
var _max = _area.attr('maxlength'); 
var _val; 
_area.bind('keyup change', function() { //绑定keyup和change事件 
if (_info.find('span').size() < 1) {//避免每次弹起都会插入一条提示信息 
_info.append(_max); 
} 
_val = $(this).val(); 
_cur = getByteLen(_val); 
if (_cur == 0) {//当默认值长度为0时,可输入数为默认maxlength值 
_info.text(_max); 
} else if (_cur < _max) {//当默认值小于限制数时,可输入数为max-cur 
_info.text(_max - _cur); 
} else {//当默认值大于等于限制数时 
_info.text(0); 
$(this).val(getByteVal(_val,_max)); //截取指定字节长度内的值 
} 
}); 
}); 
</script>
Javascript 相关文章推荐
js和jquery批量绑定事件传参数一(新猪猪原创)
Jun 23 Javascript
jQuery中对节点进行操作的相关介绍
Apr 16 Javascript
浅析jquery的js图表组件highcharts
Mar 06 Javascript
jQuery中siblings()方法用法实例
Jan 08 Javascript
Flow之一个新的Javascript静态类型检查器
Dec 21 Javascript
JavaScript操作select元素和option的实例代码
Jan 29 Javascript
JS密码生成与强度检测完整实例(附demo源码下载)
Apr 06 Javascript
vue 简单自动补全的输入框的示例
Mar 12 Javascript
JS学习笔记之贪吃蛇小游戏demo实例详解
May 29 Javascript
教你搭建按需加载的Vue组件库(小结)
Jul 29 Javascript
JavaScript数组排序的六种常见算法总结
Aug 18 Javascript
最新最全的手机号验证正则表达式
Feb 24 Javascript
jquery 元素相对定位代码
Oct 15 #Javascript
JQuery小知识
Oct 15 #Javascript
JQuery1.4+ Ajax IE8 内存泄漏问题
Oct 15 #Javascript
关于IE浏览器以及Firefox下的javascript冒泡事件的响应层级
Oct 14 #Javascript
js限制文本框为整数和货币的函数代码
Oct 13 #Javascript
javascript中&quot;/&quot;运算符常见错误
Oct 13 #Javascript
javascript一个无懈可击的实例化XMLHttpRequest的方法
Oct 13 #Javascript
You might like
PHP+FastCGI+Nginx配置PHP运行环境
2014/08/07 PHP
php实现refresh刷新页面批量导入数据的方法
2014/12/23 PHP
ThinkPHP2.x防范XSS跨站攻击的方法
2015/09/25 PHP
基于php实现随机合并数组并排序(原排序)
2015/11/26 PHP
PHPstorm启用自动换行的方法详解(IDE)
2020/09/17 PHP
DD_belatedPNG,IE6下PNG透明解决方案(国外)
2010/12/06 Javascript
使用jquery实现select添加实现后台权限添加的效果
2011/05/28 Javascript
我用的一些Node.js开发工具、开发包、框架等总结
2014/09/25 Javascript
JS实现仿QQ面板的手风琴效果折叠菜单代码
2015/09/11 Javascript
JS实现slide文字框缩放伸展效果代码
2015/11/05 Javascript
浅析JavaScript中break、continue和return的区别
2016/11/30 Javascript
JS简易计算器实例讲解
2020/06/30 Javascript
Vue如何跨组件传递Slot的实现
2020/12/14 Vue.js
[02:43]2014DOTA2国际邀请赛 官方Alliance战队纪录片
2014/07/14 DOTA
[48:51]完美世界DOTA2联赛PWL S2 Magma vs InkIce 第一场 11.28
2020/12/02 DOTA
Python多线程、异步+多进程爬虫实现代码
2016/02/17 Python
django使用html模板减少代码代码解析
2017/12/12 Python
python机器学习理论与实战(五)支持向量机
2018/01/19 Python
Python对ElasticSearch获取数据及操作
2019/04/24 Python
python Gunicorn服务器使用方法详解
2019/07/22 Python
Python绘图实现显示中文
2019/12/04 Python
详解pandas绘制矩阵散点图(scatter_matrix)的方法
2020/04/23 Python
法国珠宝店:CLEOR
2017/01/29 全球购物
几道Web/Ajax的面试题
2016/11/05 面试题
工商学院毕业生自荐信
2013/11/12 职场文书
电子商务自荐书范文
2014/01/04 职场文书
2014年开学第一课活动方案
2014/03/06 职场文书
企业文明单位申报材料
2014/05/16 职场文书
企业文化标语口号
2014/06/09 职场文书
党的群众路线教育实践活动个人对照检查材料(教师)
2014/11/04 职场文书
个人租房协议书
2014/11/28 职场文书
经典搞笑版检讨书
2015/02/19 职场文书
社区法制宣传月活动总结
2015/05/07 职场文书
靠谱的活动总结
2019/04/16 职场文书
广播稿:校园广播稿范文
2019/04/17 职场文书
聊聊pytorch测试的时候为何要加上model.eval()
2021/05/23 Python