2013-01-09 13:31 IE不支持textarea的maxlength属性,Firefox支持详解编程语言

解决办法:

<s:textarea name=”doc.intro” id=”intro” rows=”3″ cssStyle=”width: 505px;” onkeyup=”validateLength(this)” onblur=”validateLength(this)”></s:textarea>
//验证textare输入长度

function validateLength(arg){

var intro = arg.innerHTML.replace(/^/s+|/s+$/g,””);

if(intro.length>512){

arg.innerHTML=intro.substr(0,512);

}

}

如果只是單純地想限制 textarea 中的字數,不想寫太多的話,可用:

<textarea onkeydown=”this.value = this.value.slice(0, 80)”></textarea>
<textarea onkeyup=”this.value = this.value.substring(0, 80)”></textarea>
在 textarea 的 onkeyup 中檢查字數之方法:
…..
<script language=”javascript” type=”text/javascript”>
function DjCheckMaxlength(oInObj)
{
var iMaxLen = parseInt(oInObj.getAttribute(‘maxlength’));
var iCurLen = oInObj.value.length;
if ( oInObj.getAttribute && iCurLen > iMaxLen )
{
oInObj.value = oInObj.value.substring(0, iMaxLen);
}
} //@ END OF DjCheckMaxlength()
</script>
…..
<textarea maxlength=”80″ onkeyup=”return DjCheckMaxlength(this);”></textarea>
…..

 

 

設定好自動去檢查所有的 textarea 之方法:

…..
<head>
<script language=”javascript” type=”text/javascript”>
function DjTextArea_AddMaxlengthAttr()
{
var aX = document.getElementsByTagName_r(‘textarea’);
for ( var iI = 0; aX.length > iI; iI++ )
{
if ( aX[iI].getAttribute(‘maxlength’) )
{
aX[iI].onkeyup = aX[iI].onchange = DjTextArea_CheckMaxlength;
}
}
} //@ END OF DjTextArea_AddMaxlengthAttr()
function DjTextArea_CheckMaxlength()
{
var iMaxLen = parseInt(this.getAttribute(‘maxlength’));
var iCurLen = this.value.length;
if ( this.getAttribute && iCurLen > iMaxLen )
{
this.value = this.value.substring(0, iMaxLen);
}
} //@ END OF DjTextArea_CheckMaxlength()
</script>
</head>
…..
<body onload=”DjTextArea_AddMaxlengthAttr();”>
首先在textarea 上定义一个 maxlength 属性:
<textarea rows=”3″ cols=”40″ maxlength=”200″ onkeydown=”checklength(this);”></textarea>
然后添加这个方法就行了!
function checklength(obj) {
var max = obj.maxlength;
if(max == null || max == “” || max == undefined) {
return;
}
if(obj.value.length > max) {
alert(“请不要超过最大长度:” + max);
obj.value=obj.value.substring(0,(max-1));
return;
}
}
 

原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/13303.html

(0)
上一篇 2021年7月19日
下一篇 2021年7月19日

相关推荐

发表回复

登录后才能评论