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 相关文章推荐
深入理解Javascript作用域与变量提升
Dec 09 Javascript
用Jquery选择器计算table中的某一列某一行的合计
Aug 13 Javascript
javascript异步编程代码书写规范Promise学习笔记
Feb 11 Javascript
JS实现仿中关村论坛评分后弹出提示效果的方法
Feb 23 Javascript
jQuery使用removeClass方法删除元素指定Class的方法
Mar 26 Javascript
javascript多行字符串的简单实现方式
May 04 Javascript
jquery实现动态改变div宽度和高度
May 08 Javascript
jQuery基于扩展简单实现倒计时功能的方法
May 14 Javascript
简单说说如何使用vue-router插件的方法
Apr 08 Javascript
微信公众号服务器验证Token步骤图解
Dec 30 Javascript
js实现时间日期校验
May 26 Javascript
如何vue使用el-table遍历循环表头和表体数据
Apr 26 Vue.js
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
在任意字符集下正常显示网页的方法一
2007/04/01 PHP
php daddslashes()和 saddslashes()有哪些区别分析
2012/10/26 PHP
php去除数组中重复数据
2014/11/18 PHP
详解PHP发送邮件知识点
2018/05/06 PHP
Yii框架引入coreseek分页功能示例
2019/02/08 PHP
PHP whois查询类定义与用法示例
2019/04/03 PHP
PHP实现财务审核通过后返现金额到客户的功能
2019/07/04 PHP
Gambit vs CL BO3 第二场 2.13
2021/03/10 DOTA
JQuery从头学起第一讲
2010/07/04 Javascript
jQuery 2.0.3 源码分析之core(一)整体架构
2014/05/27 Javascript
基于jquery实现在线选座订座之影院篇
2015/08/24 Javascript
自己动手写的javascript前端等待控件
2015/10/30 Javascript
js简单网速测试方法完整实例
2015/12/15 Javascript
js仿淘宝评价评分功能
2017/02/28 Javascript
js实现拖拽上传图片功能
2017/08/01 Javascript
vue.js中引入vuex储存接口数据及调用的详细流程
2017/12/14 Javascript
vue结合element-ui使用示例
2019/01/24 Javascript
vue中使用带隐藏文本信息的图片、图片水印的方法
2020/04/24 Javascript
Nuxt.js nuxt-link与router-link的区别说明
2020/11/06 Javascript
在vs code 中如何创建一个自己的 Vue 模板代码
2020/11/10 Javascript
[04:37]DOTA2英雄梦之声Vol20发条
2014/06/20 DOTA
[55:45]DOTA2上海特级锦标赛D组败者赛 Liquid VS COL第一局
2016/02/28 DOTA
python定时采集摄像头图像上传ftp服务器功能实现
2013/12/23 Python
Python中使用platform模块获取系统信息的用法教程
2016/07/08 Python
在notepad++中实现直接运行python代码
2019/12/18 Python
详细分析Python垃圾回收机制
2020/07/01 Python
Pycharm新手使用教程(图文详解)
2020/09/17 Python
Python基础进阶之海量表情包多线程爬虫功能的实现
2020/12/17 Python
使用HTML5 Canvas为图片填充颜色和纹理的教程
2016/03/21 HTML / CSS
MATCHESFASHION.COM法国官网:英国奢侈品零售商
2018/01/04 全球购物
以实惠的价格轻松租车,免费取消:Easyrentcars
2019/07/16 全球购物
大专计算机个人求职的自我评价
2013/10/21 职场文书
关于运动会的稿件
2014/02/02 职场文书
医药类个人求职的自我评价
2014/02/12 职场文书
客服专员岗位职责
2014/02/28 职场文书
2014年前台个人工作总结
2014/11/14 职场文书