您的位置:首页 > Web前端 > JavaScript

JS统计字数

2009-12-02 16:04 190 查看
tno是剩余字数显示区域元素的ID

区分中文和字母数字:

function checklen(obj){
var lenE = obj.value.length;
var lenC = 0;
var CJK = obj.value.match(/[/u4E00-/u9FA5/uF900-/uFA2D]/g);
if (CJK != null) lenC += CJK.length;
$('tno').innerText = obj.maxlength - lenC - lenE ;
if ($('tno').innerText < 0) {
var tmp = 0
var cut = obj.value.substring(0, obj.maxlength);
for (var i=0; i<cut.length; i++){
tmp += /[/u4E00-/u9FA5/uF900-/uFA2D]/.test(cut.charAt(i)) ? 2 : 1;
if (tmp > obj.maxlength) break;
}
obj.value = cut.substring(0, i);
}
}

用法:<textarea name="content" id="remark" class="brownborder" maxlength="250" onpropertychange="checklen(this)">$old_content[content]</textarea>
<div id="remainstr">最多可以输入250字<br />您还可以输入<span id="tno"></span>字</div>

不区分中文、字母数字的:

function textCounter(field, maxlimit) {
if (field.value.length > maxlimit)
field.value = field.value.substring(0, maxlimit);
else
$("tno").innerText = maxlimit - field.value.length;
}

用法:<textarea name="content" id="remark" class="brownborder" onpropertychange="textCounter(this,250)">$old_content[content]</textarea>
<div id="remainstr">最多可以输入250字<br />您还可以输入<span id="tno"></span>字</div>

附带JS对浮点数取整的方法:

Math.floor(num) :返回<=参数的最大整数.

Math.ceil(num);返回>=参数的最小整数.

Math.round(num);就是四舍五入.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: