jquery判断字符输入个数(数字英文长度记为1,中文记为2,超过长度自动截取)_Javascript教程-查字典教程网
jquery判断字符输入个数(数字英文长度记为1,中文记为2,超过长度自动截取)
jquery判断字符输入个数(数字英文长度记为1,中文记为2,超过长度自动截取)
发布时间:2016-12-30 来源:查字典编辑
摘要:1.$('textarea#txtPrizeNote');//表示textarea控件名称2.'span'显示剩余字数的标签HTML:复制代...

1. $('textarea#txtPrizeNote'); //表示textarea控件名称

2. 'span' 显示剩余字数的标签

HTML:

复制代码 代码如下:

<div>

<textarea id="txtPrizeNote" runat="server" height="74px" width="480px" maxlength="10"

></textarea>

<span>*</span><br />

剩余字数:<span id="showmsg"></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教程学习
    编程开发子分类