FAQ ASP.NET/VB.NET
FAQ ASP.NET/VB.NETConsultez toutes les FAQ
Nombre d'auteurs : 38, nombre de questions : 369, dernière mise à jour : 16 juin 2021
Nous allons voir comment capturer l'appui sur une touche du clavier coté client et comment y associer du code derrière. Dans cette exemple
nous traitons l'appuis sur la touche "enter".
dans la page aspx :
<head>
<script language
=
"javascript"
>
function trap
(
)
{
if((
event
.
which &&
event
.
which ==
13
)||(
event
.
keyCode &&
event
.
keyCode ==
13
))
{
document
.
Form1.
ToucheReturn.
value =
'true'
;
document
.
Form1.submit
(
);
}
}
</script>
</HEAD>
<body MS_POSITIONING
=
"GridLayout"
onkeypress
=
"Javascript:trap()"
>
<form id
=
"Form1"
method
=
"post"
runat
=
"server"
>
<input id
=
"ToucheReturn"
type
=
"hidden"
value
=
"false"
name
=
"ToucheReturn"
runat
=
"server"
>
et dans le code-behind :
Private
Sub
ToucheReturn_ServerChange
(
ByVal
sender As
Object
, ByVal
e As
System.EventArgs
) _
Handles
ToucheReturn.ServerChange
'traitement à associé à l'appuis de la touche
ToucheReturn.Value
=
"false"
'on remet le hidden à l'état initial
End
Sub
Afin d'éviter les retours serveur pour les vérifications, nous sommes souvents tenter de vouloir empêcher la saisie d'un certains types de caractères comme les lettres si
l'on attend des chiffres.
C'est là que le javascript vient à notre aide en ajoutant des attributs à notre TextBox:
tonTextBox.Attributes.Add
(
"onKeyPress"
, "if (event.keyCode < 48 || event.keyCode > 57) event.returnValue = false;"
)
Il est évidemment possible d'empêcher la saisie de chiffres ou tout autre caractère par cette méthode.