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

JS限制多行文本域输入的字符个数

2012-01-31 16:14 393 查看
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>限制多行文本域输入的字符个数</title>
<script language=JavaScript>
var LastCount = 0;
function CountStrByte(Message, maxs, Used, Remain) { //字节统计
var ByteCount = 0;
var StrValue = Message.value;
var StrLength = Message.value.length;
var maxsValue = maxs.value;
if (LastCount != StrLength) { // 在此判断,减少循环次数
for (i = 0; i < StrLength; i++) {
ByteCount = (StrValue.charCodeAt(i) <= 256) ? ByteCount + 1
: ByteCount + 2;
if (ByteCount > maxsValue) {
Message.value = StrValue.substring(0, i);
alert("留言内容最多不能超过 " + maxsValue + " 个字节!\n注意:一个汉字为两字节。");
ByteCount = maxsValue;
break;
}
}
Used.value = ByteCount;
Remain.value = maxsValue - ByteCount;
LastCount = StrLength;
}
}
</script>
</head>
<body>
<form action="">
<textarea name="content" cols="50" rows="9" class="wenbenkuang"
id="content"
onkeydown="CountStrByte(this.form.content,this.form.total,this.form.used,this.form.remain);"
onkeyup="CountStrByte(this.form.content,this.form.total,this.form.used,this.form.remain);"></textarea>
<br /> <br /> 最多允许 <input name="total" type="text" disabled
class="noborder" id="total" value="1600" size="4"> 个字节
已用字节:  <input name="used" type="text" disabled class="noborder"
id="used" value="0" size="4"> 剩余字节: <input name="remain"
type="text" disabled class="noborder" id="remain" value="1600"
size="4">
</form>

</body>
</html>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: