作家
登录

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

作者: 来源:www.28hudong.com 2013-03-30 01:15:59 阅读 我要评论

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_07_理解instanceof实现原理

那么instanceof的这种行为到底是如何实现的呢,现在让我们揭开instanceof背后的迷雾。 instanceof原理 照惯例,我们先来看一段代码: 复制代码 代码如下: function Cat(){} Cat.prototype = {} function Dog(){} Do>>>详细阅读


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

地址:http://www.17bianji.com/kaifa2/JS/25617.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)