Validation du formulaire en pressant la touche "Enter"
1 réponse
Did
voilà j'ai une page aspx dans laquelle des controles serveurs et controles
utilisateurs (ascx) sont chargés. La page contient entre autres un formulaire
dont le trairement de l'information est invoquée en cliquant sur un bouton
("envoyer").
contrairemnt à l'asp et html lorsqu'on frappe sur le bouton "Envoyer" le
"do_postback" est invoqué et le traitement souhaité n'est pas exécuté. J'ai
tenté de capturer via Javascript la frappe d'une touche, mais ça ne fonctione
pas pour la touche "enter". Y a -t-il moyen de désactiver le Postback sur
frappe de "Enter".
Cependant j'ai pui faire valider le formulaire sur une page aspx dans
laquelle il y avait juste deux champs texte (HtmlInput et non contrôle
serveur) et un bouton. Je n'y avais pas mis des controles utilisateurs.
Pour infos, je programme en C# avec Visual Studio 2003.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Aurélien [MS]
Bonjour Did,
Voici un exemple de code très sympa permettant d'affecter un bouton à un Textbox quand tu appuieras sur "Entrée". Dans l'exemple ci-dessus, quand tu as le focus sur TextBox1 et que tu appuies sur Entrée, c'est Button1 qui sera "declenché", pour TextBox2, ce sera Button2, etc...
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 'Put user code to initialize the page here DefaultButton(Page, TextBox1, Button1) DefaultButton(Page, TextBox2, Button2) DefaultButton(Page, TextBox3, Button3) End Sub
Public Sub DefaultButton(ByRef Page As System.Web.UI.Page, ByRef objTextControl As TextBox, ByRef objDefaultButton As Button) ' Sets default buttons. ' Created by Janus Kamp Hansen - http://www.kamp-hansen.dk Dim sScript As New System.Text.StringBuilder
objTextControl.Attributes.Add("onkeydown", "fnTrapKD(document.all." & objDefaultButton.ClientID & ")") Page.RegisterStartupScript("ForceDefaultToScript", sScript.ToString) End Sub
-- Aurélien Norie Microsoft France -------------------- Merci de bien vouloir répondre à ce message dans le newsgroup où il a été posté. Je le consulte régulièrement.
"Did" a écrit dans le message de news:
voilà j'ai une page aspx dans laquelle des controles serveurs et controles utilisateurs (ascx) sont chargés. La page contient entre autres un formulaire dont le trairement de l'information est invoquée en cliquant sur un bouton ("envoyer"). contrairemnt à l'asp et html lorsqu'on frappe sur le bouton "Envoyer" le "do_postback" est invoqué et le traitement souhaité n'est pas exécuté. J'ai tenté de capturer via Javascript la frappe d'une touche, mais ça ne fonctione pas pour la touche "enter". Y a -t-il moyen de désactiver le Postback sur frappe de "Enter". Cependant j'ai pui faire valider le formulaire sur une page aspx dans laquelle il y avait juste deux champs texte (HtmlInput et non contrôle serveur) et un bouton. Je n'y avais pas mis des controles utilisateurs.
Pour infos, je programme en C# avec Visual Studio 2003.
Merci de votre aide
Bonjour Did,
Voici un exemple de code très sympa permettant d'affecter un bouton à un
Textbox quand tu appuieras sur "Entrée".
Dans l'exemple ci-dessus, quand tu as le focus sur TextBox1 et que tu
appuies sur Entrée, c'est Button1 qui sera "declenché",
pour TextBox2, ce sera Button2, etc...
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
'Put user code to initialize the page here
DefaultButton(Page, TextBox1, Button1)
DefaultButton(Page, TextBox2, Button2)
DefaultButton(Page, TextBox3, Button3)
End Sub
Public Sub DefaultButton(ByRef Page As System.Web.UI.Page, ByRef
objTextControl As TextBox, ByRef objDefaultButton As Button)
' Sets default buttons.
' Created by Janus Kamp Hansen - http://www.kamp-hansen.dk
Dim sScript As New System.Text.StringBuilder
objTextControl.Attributes.Add("onkeydown", "fnTrapKD(document.all."
& objDefaultButton.ClientID & ")")
Page.RegisterStartupScript("ForceDefaultToScript", sScript.ToString)
End Sub
--
Aurélien Norie
Microsoft France
--------------------
Merci de bien vouloir répondre à ce message dans le newsgroup où il a été
posté. Je le consulte régulièrement.
"Did" <Did@discussions.microsoft.com> a écrit dans le message de news:
2281D99C-193C-4399-A6A3-569E288A57BB@microsoft.com...
voilà j'ai une page aspx dans laquelle des controles serveurs et controles
utilisateurs (ascx) sont chargés. La page contient entre autres un
formulaire
dont le trairement de l'information est invoquée en cliquant sur un
bouton
("envoyer").
contrairemnt à l'asp et html lorsqu'on frappe sur le bouton "Envoyer" le
"do_postback" est invoqué et le traitement souhaité n'est pas exécuté.
J'ai
tenté de capturer via Javascript la frappe d'une touche, mais ça ne
fonctione
pas pour la touche "enter". Y a -t-il moyen de désactiver le Postback sur
frappe de "Enter".
Cependant j'ai pui faire valider le formulaire sur une page aspx dans
laquelle il y avait juste deux champs texte (HtmlInput et non contrôle
serveur) et un bouton. Je n'y avais pas mis des controles utilisateurs.
Pour infos, je programme en C# avec Visual Studio 2003.
Voici un exemple de code très sympa permettant d'affecter un bouton à un Textbox quand tu appuieras sur "Entrée". Dans l'exemple ci-dessus, quand tu as le focus sur TextBox1 et que tu appuies sur Entrée, c'est Button1 qui sera "declenché", pour TextBox2, ce sera Button2, etc...
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 'Put user code to initialize the page here DefaultButton(Page, TextBox1, Button1) DefaultButton(Page, TextBox2, Button2) DefaultButton(Page, TextBox3, Button3) End Sub
Public Sub DefaultButton(ByRef Page As System.Web.UI.Page, ByRef objTextControl As TextBox, ByRef objDefaultButton As Button) ' Sets default buttons. ' Created by Janus Kamp Hansen - http://www.kamp-hansen.dk Dim sScript As New System.Text.StringBuilder
objTextControl.Attributes.Add("onkeydown", "fnTrapKD(document.all." & objDefaultButton.ClientID & ")") Page.RegisterStartupScript("ForceDefaultToScript", sScript.ToString) End Sub
-- Aurélien Norie Microsoft France -------------------- Merci de bien vouloir répondre à ce message dans le newsgroup où il a été posté. Je le consulte régulièrement.
"Did" a écrit dans le message de news:
voilà j'ai une page aspx dans laquelle des controles serveurs et controles utilisateurs (ascx) sont chargés. La page contient entre autres un formulaire dont le trairement de l'information est invoquée en cliquant sur un bouton ("envoyer"). contrairemnt à l'asp et html lorsqu'on frappe sur le bouton "Envoyer" le "do_postback" est invoqué et le traitement souhaité n'est pas exécuté. J'ai tenté de capturer via Javascript la frappe d'une touche, mais ça ne fonctione pas pour la touche "enter". Y a -t-il moyen de désactiver le Postback sur frappe de "Enter". Cependant j'ai pui faire valider le formulaire sur une page aspx dans laquelle il y avait juste deux champs texte (HtmlInput et non contrôle serveur) et un bouton. Je n'y avais pas mis des controles utilisateurs.
Pour infos, je programme en C# avec Visual Studio 2003.