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 相关文章推荐
dojo学习第二天 ajax异步请求之绑定列表
Aug 29 Javascript
javascript判断机器是否联网的2种方法
Aug 09 Javascript
父节点获取子节点的字符串示例代码
Feb 26 Javascript
每日十条JavaScript经验技巧(二)
Jun 23 Javascript
jQuery的ajax和遍历数组json实例代码
Aug 01 Javascript
AngularJS全局警告框实现方法示例
May 18 Javascript
jQuery选择器之表单元素选择器详解
Sep 19 jQuery
Node.js应用设置安全的沙箱环境
Apr 23 Javascript
jsonp跨域获取数据的基础教程
Jul 01 Javascript
微信小程序仿朋友圈发布动态功能
Jul 15 Javascript
9102年webpack4搭建vue项目的方法步骤
Feb 20 Javascript
javascript拖曳互换div的位置实现示例
Jun 28 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
推荐文章系统(一)
2006/10/09 PHP
实现php加速的eAccelerator dll支持文件打包下载
2007/09/30 PHP
PHP使用trim函数去除字符串左右空格及特殊字符实例
2016/01/07 PHP
php编程每天必学之验证码
2016/03/03 PHP
微信公众号实现扫码获取微信用户信息(网页授权)
2019/04/09 PHP
PHP 7.4 新语法之箭头函数实例详解
2019/05/09 PHP
Apache+PHP+MySQL搭建PHP开发环境图文教程
2020/08/06 PHP
Whatever:hover 无需javascript让IE支持丰富伪类
2010/06/29 Javascript
各浏览器对link标签onload/onreadystatechange事件支持的差异分析
2011/04/27 Javascript
各浏览器对document.getElementById等方法的实现差异解析
2013/12/05 Javascript
JavaScript学习小结(一)——JavaScript入门基础
2015/09/02 Javascript
js实现无缝滚动图
2017/02/22 Javascript
整理关于Bootstrap模态弹出框的慕课笔记
2017/03/29 Javascript
微信小程序多列选择器range-key使用详解
2020/03/30 Javascript
SelectPage v2.4 发布新增纯下拉列表和关闭分页功能
2017/09/07 Javascript
vue基于Element构建自定义树的示例代码
2017/09/19 Javascript
超出JavaScript安全整数限制的数字计算BigInt详解
2018/06/24 Javascript
微信小程序手机号码验证功能的实例代码
2018/08/28 Javascript
微信小程序地图(map)组件点击(tap)获取经纬度的方法
2019/01/10 Javascript
js 实现 list转换成tree的方法示例(数组到树)
2019/08/18 Javascript
微信小程序实现上拉加载功能
2019/11/20 Javascript
JS 设计模式之:单例模式定义与实现方法浅析
2020/05/06 Javascript
vue项目中微信登录的实现操作
2020/09/08 Javascript
js实现抽奖功能
2020/11/24 Javascript
Cython 三分钟入门教程
2009/09/17 Python
python协程用法实例分析
2015/06/04 Python
R语言 vs Python对比:数据分析哪家强?
2017/11/17 Python
解决Python import docx出错DLL load failed的问题
2020/02/13 Python
Keras中的两种模型:Sequential和Model用法
2020/06/27 Python
使用PyCharm安装pytest及requests的问题
2020/07/31 Python
python反编译教程之2048小游戏实例
2021/03/03 Python
会计实习自我鉴定
2013/12/04 职场文书
《临死前的严监生》教学反思
2014/02/13 职场文书
乡村文明行动实施方案
2014/03/29 职场文书
通信工程求职信
2014/07/16 职场文书
咖啡店创业计划书
2014/08/15 职场文书