<SCRIPT LANGUAGE="JavaScript">
<!--
function check()
{
var val=form1.text1.value.length;
if(val>30)
{
str=form1.text1.value.substring(0,30);
form1.text1.value=str;
}
}
//-->
</SCRIPT>
</HEAD><BODY>
<FORM METHOD=POST name=form1 ACTION="">
<TEXTAREA NAME="text1" ROWS="5" COLS="50" onkeypress="check();"></TEXTAREA>
<INPUT TYPE="button" value="check">
</FORM>
<!--
function check()
{
var val=form1.text1.value.length;
if(val>30)
{
str=form1.text1.value.substring(0,30);
form1.text1.value=str;
}
}
//-->
</SCRIPT>
</HEAD><BODY>
<FORM METHOD=POST name=form1 ACTION="">
<TEXTAREA NAME="text1" ROWS="5" COLS="50" onkeypress="check();"></TEXTAREA>
<INPUT TYPE="button" value="check">
</FORM>
当然,你也可写个HTC类,扩展TEXTAREA标记,给它加上一类似“<input type=text>”的属性:maxlength。
</textarea>
<script language=javascript>
element=document.all["test"]
maxLength = element.maxlength
function doKeypress(){
if(!isNaN(maxLength))
{
maxLength = parseInt(maxLength)
var oTR = element.document.selection.createRange()
if(oTR.text.length >= 1)
event.returnValue = true
else if(element.value.length > maxLength-1)
event.returnValue = false
}
}
function doKeydown(){
setTimeout(function(){maxLength = parseInt(maxLength);if(!isNaN(maxLength)){if(element.value.length > maxLength-1){var oTR = window.document.selection.createRange();oTR.moveStart("character", -1*(element.value.length-maxLength));oTR.text = ""}}},1)
}
function doBeforePaste(){
if(!isNaN(maxLength))
event.returnValue = false
}
function doPaste(){
if(!isNaN(maxLength))
{
event.returnValue = false
maxLength = parseInt(maxLength)
var oTR = element.document.selection.createRange()
var iInsertLength = maxLength - element.value.length + oTR.text.length
var sData = window.clipboardData.getData("Text").substr(0, iInsertLength)
oTR.text = sData;
}
}
</script>