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 相关文章推荐
ie与ff下的event事件使用介绍
Nov 25 Javascript
jQuery 中DOM 操作详解
Jan 13 Javascript
Backbone.js框架中简单的View视图编写学习笔记
Feb 14 Javascript
js判断输入字符串是否为空、空格、null的方法总结
Jun 14 Javascript
JavaScript中的this引用(推荐)
Aug 05 Javascript
Jquery遍历select option和添加移除option的实现方法
Aug 26 Javascript
不使用script导入js文件的几种方法
Oct 27 Javascript
Javascript基础回顾之(一) 类型
Jan 31 Javascript
JavaScript学习笔记之函数记忆
Sep 06 Javascript
Vue基于vuex、axios拦截器实现loading效果及axios的安装配置
Apr 26 Javascript
layui扩展上传组件模拟进度条的方法
Sep 23 Javascript
Vue Cli3 打包配置并自动忽略console.log语句的方法
Apr 23 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
yii2分页之实现跳转到具体某页的实例代码
2016/06/02 PHP
微信开发之php表单微信中自动提交两次问题解决办法
2017/01/08 PHP
PHP实现的敏感词过滤方法示例
2019/03/06 PHP
PHP使用 Pear 进行安装和卸载包的方法详解
2019/07/08 PHP
PHP查找一列有序数组是否包含某值的方法
2020/02/07 PHP
ajax处理php返回json数据的实例代码
2013/01/24 Javascript
js数组的基本操作(很全自己整理的)
2014/10/16 Javascript
node.js中的fs.writeFile方法使用说明
2014/12/14 Javascript
jQuery源码分析之Callbacks详解
2015/03/13 Javascript
原生javascript实现分享到朋友圈功能 支持ios和android
2016/05/11 Javascript
jquery checkbox无法用attr()二次勾选问题的解决方法
2016/07/22 Javascript
浅谈jQuery中hide和fadeOut的区别 show和fadeIn的区别
2016/08/18 Javascript
实现一个简单的vue无限加载指令方法
2017/01/10 Javascript
微信小程序 跳转传递数据的实例
2017/07/06 Javascript
浅谈angular4 ng-content 中隐藏的内容
2017/08/18 Javascript
深入理解React高阶组件
2017/09/28 Javascript
Vue-CLI与Vuex使用方法实例分析
2020/01/06 Javascript
用Python实现一个简单的线程池
2015/04/07 Python
初步解析Python下的多进程编程
2015/04/28 Python
python下MySQLdb用法实例分析
2015/06/08 Python
浅析python中的分片与截断序列
2016/08/09 Python
详解Python使用tensorflow入门指南
2018/02/09 Python
Python request设置HTTPS代理代码解析
2018/02/12 Python
pandas获取groupby分组里最大值所在的行方法
2018/04/20 Python
使用python对文件中的单词进行提取的方法示例
2018/12/21 Python
django ModelForm修改显示缩略图 imagefield类型的实例
2019/07/28 Python
python:目标检测模型预测准确度计算方式(基于IoU)
2020/01/18 Python
python GUI库图形界面开发之PyQt5信号与槽基础使用方法与实例
2020/03/06 Python
Python 如何反方向迭代一个序列
2020/07/28 Python
Python 使用xlwt模块将多行多列数据循环写入excel文档的操作
2020/11/10 Python
CSS3 box-sizing属性详解
2016/11/15 HTML / CSS
行政前台岗位职责
2013/12/04 职场文书
培训讲师岗位职责
2014/04/13 职场文书
祖国在我心中演讲稿600字
2014/09/23 职场文书
安全生产标语大全
2014/10/06 职场文书
学生会招新宣传语
2015/07/13 职场文书