Salut
J'ai un formulaire de chat contenant la zone de texte (textarea):
<textarea name="msg" cols="46" rows="2" class="short" onKeyPress="process(event)" onKeyDown="shift(event)"></textarea>
Les fonctions ci-dessous me permettent de reagir lorsque
l'utilisateur presse le bouton ENTREE du clavier. Le probleme
est que le passage a la ligne est effectif dans la zone de texte
apres l'evenement. Comment eviter que cette nouvelle ligne
soit enregistree dans la zone de texte au passage de cet evenement ?
Voici le code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
| <script language="JavaScript" type="text/javascript">
<!--
var isShift=null;
var isNN = (navigator.appName.indexOf("Netscape")!=-1);
var OP = (navigator.appName.indexOf("Opera")!=-1);
if(OP)isNN=true;
var key;
function shift(event)
{
key = (isNN) ? event.which : event.keyCode;
if (key==16)isShift=1;
}
function process(event)
{
key = (isNN) ? event.which : event.keyCode;
if(document.layers&&event.modifiers==4)
{
isShift=1;
}
if (key==13&&isShift!=1)
{
send_pm();
return false;
}
if (key!=16)isShift=null;
}
}
//-->
</script> |
Merci pour votre aide
Stephane
Partager