Bonjour je voudrais pouvoir insérer un compteur dans une page php sur un champ "textarea" pour informer l'utilisateur du nombre de saisie effectuées a chaque fois qu'il tape un caractere.
Merci d'avance.
<html>
<head>
<title>Formulaire d'envoi</title>
<script type="text/javascript">
/*
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)
lengthleft=0
}
placeholderobj.innerHTML=lengthleft
}
}
function displaylimit(thename, theid, thelimit){
var theform=theid!=""? document.getElementById(theid) : thename
var limit_text='Nombre de caractères restants : <strong><span id="'+theform.toString()+'">'+thelimit+'</span></strong>'
if (document.all||ns6)
document.write(limit_text)
if (document.all){
eval(theform).onkeydown=function(){ countlimit(thelimit,event,theform)}
eval(theform).onkeypress=function(){ return restrictinput(thelimit,event,theform)}
eval(theform).onkeyup=function(){ countlimit(thelimit,event,theform)}
}
else if (ns6){
document.body.addEventListener('keydown', function(event) { countlimit(thelimit,event,theform) }, true);
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="form">
<h4>Message :</h4>
<textarea name="message" id="message" cols="40" rows="6" class="input"></textarea><br />
<script>displaylimit("document.form.message","",160);</script><br />
</form>
</body>
</html>merci mais il y a une erreur. IE me met l'erreur suivante :Kdo
<html> <head> <title>Formulaire d\'envoi</title> <script type="text/javascript"> /* 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) lengthleft=0 } placeholderobj.innerHTML=lengthleft } } function displaylimit(thename, theid, thelimit){ var theform=theid!=""? document.getElementById(theid) : thename var limit_text='Nombre de caractères restants : <strong><span id="'+theform.toString()+'">'+thelimit+'</span></strong>' if (document.all||ns6) document.write(limit_text) if (document.all){ eval(theform).onkeydown=function(){ countlimit(thelimit,event,theform)} eval(theform).onkeypress=function(){ return restrictinput(thelimit,event,theform)} eval(theform).onkeyup=function(){ countlimit(thelimit,event,theform)} } else if (ns6){ document.body.addEventListener('keydown', function(event) { countlimit(thelimit,event,theform) }, true); 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="form"> <h4>Message :</h4> <textarea name="message" id="message" cols="40" rows="6" class="input"></textarea><br /> <script>displaylimit("document.form.message","",160);</script><br /> </form> </body> </html>