我觉得比较好的做法:
<form name=frm>
<textarea name=content onfocus="set(this.name,10)" onblur="clr()"></textarea>
</form>
<script>
var timer
function set(t,l){
if(document.frm(t).value.length>l)
document.frm(t).value=document.frm(t).value.substr(0,l)
timer=setTimeout("set('"+t+"',"+l+")",1)
}
function clr(){
clearTimeout(timer)
}
</script>
<form name=frm>
<textarea name=content onfocus="set(this.name,10)" onblur="clr()"></textarea>
</form>
<script>
var timer
function set(t,l){
if(document.frm(t).value.length>l)
document.frm(t).value=document.frm(t).value.substr(0,l)
timer=setTimeout("set('"+t+"',"+l+")",1)
}
function clr(){
clearTimeout(timer)
}
</script>
<textarea name=content onfocus="set(this.name,10)" onblur="clr()"></textarea>
</form>
<script>
var timer
function set(t,l){
if(frm(t).value.length>l)
frm(t).value=frm(t).value.substr(0,l)
timer=setTimeout("set('"+t+"',"+l+")",1)
}
function clr(){
clearTimeout(timer)
}
</script>
<!--//
function textCounter(field, countfield, maxlimit) {
// 定义函数,传入3个参数,分别为表单区的名字,表单域元素名,字符限制;
if (field.value.length > maxlimit)
//如果元素区字符数大于最大字符数,按照最大字符数截断;
field.value = field.value.substring(0, maxlimit);
else
//在记数区文本框内显示剩余的字符数;
countfield.value = maxlimit - field.value.length;
}
//-->
</SCRIPT>如下是表单区,在HTML的<body>...</body>之间:action志向任意指定的处理程序。<form name=myform action="">
<textarea name=message wrap=physical cols=28 rows=4 onKeyDown="textCounter(this.form.message,this.form.remLen,125);" onKeyUp="textCounter(this.form.message,this.form.remLen,125);">
</textarea>
<br>
尚能输入
<input readonly type=text name=remLen size=4 maxlength=3 value="125">
个字符</div>
</form>
是希望在往textarea中输入内容的时候就能够控制,不让用户一直输下去,例如他输到第100个字符的时候光标就不再移动了,就不能再输了
试过了,没问题。只是小妹还有些顾虑,除了拷贝、托拽,菜单项,是否还存在其他的可能性。