jquery判斷字符輸入個數(shù)(數(shù)字英文長度記為1,中文記為2,超過長度自動截取)
更新時間:2010年10月15日 18:30:07 作者:
jquery判斷字符輸入個數(shù)(數(shù)字英文長度記為1,中文記為2,超過長度自動截取)
1. $('textarea#txtPrizeNote'); //表示textarea控件名稱
2. 'span' 顯示剩余字數(shù)的標簽
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 />
剩余字數(shù):<span id="showmsg" style="color: red"></span>
</div>
<script type="text/javascript">
//返回val的字節(jié)長度
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在規(guī)定字節(jié)長度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時,可輸入數(shù)為默認maxlength值
_info.text(_max);
} else if (_cur < _max) {//當默認值小于限制數(shù)時,可輸入數(shù)為max-cur
_info.text(_max - _cur);
} else {//當默認值大于等于限制數(shù)時
_info.text(0);
$(this).val(getByteVal(_val,_max)); //截取指定字節(jié)長度內的值
}
});
});
</script>
2. 'span' 顯示剩余字數(shù)的標簽
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 />
剩余字數(shù):<span id="showmsg" style="color: red"></span>
</div>
復制代碼 代碼如下:
<script type="text/javascript">
//返回val的字節(jié)長度
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在規(guī)定字節(jié)長度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時,可輸入數(shù)為默認maxlength值
_info.text(_max);
} else if (_cur < _max) {//當默認值小于限制數(shù)時,可輸入數(shù)為max-cur
_info.text(_max - _cur);
} else {//當默認值大于等于限制數(shù)時
_info.text(0);
$(this).val(getByteVal(_val,_max)); //截取指定字節(jié)長度內的值
}
});
});
</script>
您可能感興趣的文章:
- js統(tǒng)計錄入文本框中字符的個數(shù)并加以限制不超過多少
- js計算文本框輸入的字符數(shù)
- 限制文本框輸入N個字符的js代碼
- 如何用javascript計算文本框還能輸入多少個字符
- JS查找字符串中出現(xiàn)最多的字符及個數(shù)統(tǒng)計
- js監(jiān)聽鼠標事件控制textarea輸入字符串的個數(shù)
- JS限制Textarea文本域字符個數(shù)的具體實現(xiàn)
- JS實現(xiàn)統(tǒng)計字符串中字符出現(xiàn)個數(shù)及最大個數(shù)功能示例
- JS實現(xiàn)區(qū)分中英文并統(tǒng)計字符個數(shù)的方法示例
- JS與jQuery判斷文本框還剩多少字符可以輸入的方法
相關文章
jQuery之DOM對象和jQuery對象的轉換與區(qū)別分析
這篇文章主要介紹了jQuery之DOM對象和jQuery對象的轉換與區(qū)別分析,對比分析了DOM對象和jQuery對象的原理與用法,具有一定參考借鑒價值,需要的朋友可以參考下2015-01-01
jQuery+CSS3折疊卡片式下拉列表框實現(xiàn)效果
這是一款使用jQuery和CSS3制作的效果非常炫酷的折疊卡片式下拉列表框特效,感興趣的小伙伴們可以參考一下2015-11-11
放棄用你的InnerHTML來輸出HTML吧 jQuery Tmpl不詳細講解
在Ajax橫道的今天,我們在頁面交互上有了更高的要求,動態(tài)生成HTML毫無疑問是其中的一種。動態(tài)生成HTML的方式多種多樣,最終通過一定的方法輸出給用戶innerHTML、documentWrite等方式2013-04-04
jquery.boxy彈出框(后隔N秒后自動隱藏/自動跳轉)
對于 Boxy彈出框的使用之前寫過一些文章(查看jquery.boxy基礎),今天主要是在解決一個需要之后,覺得值得把它記錄下來,所以就再寫一篇,主要功能是,在彈出對話框后,隔N秒后自動隱藏,還有就是自動跳轉2013-01-01

