在 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>
o 设定好自动去检查所有的 textarea 之方法: 复制代码 代码如下: <head> <script language="javascript" type="text/javascript"> function DjTextArea_AddMaxlengthAttr() { var aX = document.getElementsByTagName("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();">
复制代码 代码如下: var Inputs = {
OnIntegerOnly: function() { var k = System.isIE ? event.keyCode : event.which;
if ( ( k < 48 || k > 57 ) && 8 != k && 9 != k && 46 != k && 37 != k && 39 != k && 16 != k && 36 != k && 35 != k && 17 != k && 13 != k && ( k < 96 || k > 105 ) ) { Inputs.DisableInput(event); }
return k; },
OnDecimalOnly: function() { var k = System.isIE ? event.keyCode : event.which;
if( ( k < 48 || k > 57 ) && 8 != k && 9 != k && 46 != k && 37 != k && 39 != k && 16 != k && 36 != k && 35 != k && 17 != k && 13 != k && 190 != k && 110 != k && ( k < 96 || k > 105 ) ) { Inputs.DisableInput(event); }
return k; },
OnAsciiOnly: function() { var k = System.isIE ? event.keyCode : event.which;
if ( ( k < 97 || k > 122 ) && ( k < 65 || k > 90 ) && ( k < 48 || k > 57 ) && 8 != k && 9 != k && 46 != k && 37 != k && 39 != k && 16 != k && 36 != k && 35 != k && 17 != k && 13 != k && 189 != k && 187 != k ) { Inputs.DisableInput(event); }
case "keyup": { var k = System.isIE ? event.keyCode : event.which;
if (8 != k && 9 != k && 46 != k && 37 != k && 39 != k && 16 != k && 36 != k && 35 != k && 17 != k && 13 != k && 189 != k && 187 != k ) { if(_this.getAttribute) { _this.fireEvent("onkeypress"); } } } break;
case "keydown": { var k = System.isIE ? event.keyCode : event.which;
if (8 != k && 9 != k && 46 != k && 37 != k && 39 != k && 16 != k && 36 != k && 35 != k && 17 != k && 13 != k && 189 != k && 187 != k ) { var iTxtLen = _this.value.lenUTF8(); if(iMaxLen <= iTxtLen) { Inputs.DisableInput(event); } } } break; } },
TextAreaMaxLength: function() {
var aX = document.getElementsByTagName("textarea"); for(var i = 0; i < aX.length; i++) { if(aX[i].getAttribute("maxlength")) { aX[i].detachEvent("onbeforepaste", Inputs.MaxLength); aX[i].detachEvent("onpaste", Inputs.MaxLength); aX[i].detachEvent("onkeypress", Inputs.MaxLength); aX[i].detachEvent("onkeyup", Inputs.MaxLength); aX[i].detachEvent("onkeydown", Inputs.MaxLength);