Want to limit the amount of text a user can enter in particular INPUT or
TEXTAREA elements? Well, this script enables not only that, but displays in
real time the number of characters remaining. An extremely practical and
useful script that functions in both IE4+ and NS6+!



<html>

<head>

<script>

/*
Form field Limiter script- By Dynamic Drive
For full source code and more DHTML scripts, visit
http://www.dynamicdrive.com
This credit MUST stay intact for use
*/

var ns6=document.getElementById&&!document.all

function restrictinput(maxlength,e,placeholder){
if (window.event&&event.srcElement.value.length>=maxlength)
return false
else if
(e.target&&e.target==eval(placeholder)&&e.target.value.length>=maxlength){
var pressedkey=/[a-zA-Z0-9\.\,\/]/ //detect alphanumeric keys
if (pressedkey.test(String.fromCharCode(e.which)))
e.stopPropagation()
}
}

function countlimit(maxlength,e,placeholder){
var theform=eval(placeholder)
var lengthleft=maxlength-theform.value.length
var placeholderobj=document.all? document.all[placeholder] :
document.getElementById(placeholder)
if (window.event||e.target&&e.target==eval(placeholder)){
if (lengthleft<0)
theform.value=theform.value.substring(0,maxlength)
placeholderobj.innerHTML=lengthleft
}
}


function displaylimit(theform,thelimit){
var limit_text='<b><span id="'+theform.toString()+'">'+thelimit+'</span></b>
characters remaining on your input limit'
if (document.all||ns6)
document.write(limit_text)
if (document.all){
eval(theform).onkeypress=function(){ return
restrictinput(thelimit,event,theform)}
eval(theform).onkeyup=function(){ countlimit(thelimit,event,theform)}
}
else if (ns6){
document.body.addEventListener('keypress', function(event) {
restrictinput(thelimit,event,theform) }, true);
document.body.addEventListener('keyup', function(event) {
countlimit(thelimit,event,theform) }, true);
}
}

</script>

</head>

<body>

<form name="sampleform">

<input type="text" name="george" size=20><br>
<script>
displaylimit("document.sampleform.george",5)
</script>
<p>
<textarea name="john" cols=25 rows=15></textarea><br>
<script>
displaylimit("document.sampleform.john",10)
</script>

</form>

</body>
</html>

----- Original Message -----
From: "Tom Ferguson" <[EMAIL PROTECTED]>
To: "Multiple recipients of list witango-talk" <[EMAIL PROTECTED]>
Sent: Thursday, October 31, 2002 11:04 AM
Subject: Witango-Talk: OT: Javascript assistance needed


> Does one of the JavaScript gurus have an example of limiting a <textarea>
> tag to a certain number of allowable characters as input?
>
> Any assistance would be welcome.
>
> TIA
>
> Thomas Ferguson
> Vice President
> Enroll DR, LLC
> [EMAIL PROTECTED]
>
> www.enrolldr.com
>
> ________________________________________________________________________
> TO UNSUBSCRIBE: send a plain text/US ASCII email to [EMAIL PROTECTED]
>                 with unsubscribe witango-talk in the message body

________________________________________________________________________
TO UNSUBSCRIBE: send a plain text/US ASCII email to [EMAIL PROTECTED]
                with unsubscribe witango-talk in the message body

Reply via email to