Valider un formulaire avec la touche entrée ?

daivil Messages postés 87 Date d'inscription mardi 25 juin 2002 Statut Membre Dernière intervention 4 juin 2005 - 2 mars 2005 à 14:35
daivil Messages postés 87 Date d'inscription mardi 25 juin 2002 Statut Membre Dernière intervention 4 juin 2005 - 7 mars 2005 à 17:47
Bonjour tout le monde,



J'ai un petit problème sur une page en .Net avec un petit formulaire en plein milieu...

En fait, ce petit formulaire est rangé dans un UserControl et permet simplement de s'inscrire à la Newletter.



Sur le bouton OK situé à coté du
formulaire, il y a une action OnCommand qui execute une fonction...
Cependant, si l'on presse la touche entrée à partir du champ texte,
celui-ci ne fait rien du tout et se contente de valider le formulaire
global coté serveur de la page...



Quelqu'un aurait une idée pour pouvoir affecter une action à ce fichu champ texte ?



Merci d'avance



Bonne journée



-- Devil --

6 réponses

jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
2 mars 2005 à 20:59
La solution consisterait à créer l'evenement onenter sur le textbox



pour ca, rien de plus simple j'ai
expliqué la solution plusieurs fois sur le forum, et aussi fait une
source (un onmouseover sur un bouton, mais le principe est le meme) tu
dérives ton textbox , tu rajoutes du javascript pour qu'un postback se
fasse au textentered, tu rajoutes un event a ton controle etc... (la
routine )



Sinon il y a il me semble ici : http://www.metabuilders.com/ c'est possible que ce controle existe déjà.



Si t'arrives pas à dériver ton controle, je t'aiderais un brin :p


<hr>
Cyril - MCP ASP.net
Webmaster de : Hoshimi.CodeS-SourceS.fr
0
daivil Messages postés 87 Date d'inscription mardi 25 juin 2002 Statut Membre Dernière intervention 4 juin 2005
2 mars 2005 à 21:26
En fait, j'ai juste
mis l'option "autopostback" du bouton sur "true" et j'ai créer les
listeners nécessaires au textChanged dans l'inialisation des elements :



This.TextBox.TextChanged += blalblal(routineAExecuter)



Et dans la routine, je redirige vers le bouton.



Et ca fonctionne parfaitement :)





Sinon, est-ce que tu as des exemples de sources qui pourraient m'aider
afin de créer des actions javascript sur un TextBox ? Genre OnMouseDown
etc... ?



Merci d'avance




-- Devil --
0
jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
2 mars 2005 à 22:44
Ah oui, je voulais parler de l'option autopostback lors de mon precedent message, mais je me suis haté car plus de batterie Le problème c'est que si le client clique sur un autre chose, sans meme vouloir valider le textbox, il y aura un postback ...



Sinon pour faire ses propres composants avec ses propres fonctions,
regarde l'exemple d'une de mes sources sur ce site, j'explique en gros
comment faire, c'est pas la méthode "officielle" mais c'est malgré tout
une méthode tres correcte (et qui ressemble quand meme à la méthode
officielle)

l'url de la source est : http://www.aspfr.com/code.aspx?id=28120



Apres tu peux faire ce que tu veux comme evenement javascript meme l'evenement onThreeClickAfterOverTheImg tout se joue niveau javascript.


<hr>
Cyril - MCP ASP.net
Webmaster de : Hoshimi.CodeS-SourceS.fr
0
daivil Messages postés 87 Date d'inscription mardi 25 juin 2002 Statut Membre Dernière intervention 4 juin 2005
7 mars 2005 à 16:07
Salut,



Apres une semaine de recherches, je
n'ai pas avancé d'un millimétre... L'option AutopostBack fonctionne
sous FireFox et si on l'implémante sous IE, ca valide bien le
formulaire mais le navigateur craque complétement...



Je ne sais pas trop comment
expliquer mon probleme mais IE semble laisser s'executer le code behind
et me fait un gros page_load à la fin.. Genre, si je mets des Alert()
dans mon code dans les fonctions appelées par la validation du
formulaire, je vois les boites de dialogue sous FireFox et pas sous
Ie...



Que faire ?



Merci d'avance...



-- Devil --
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
7 mars 2005 à 17:29
Je ne suis pas sur d'avoir compris ton problème, mais la validation se
fait il me semble en Jscript coté client, donc Firefox ne prend pas en
compte ca, la validation se fait donc coté serveur.



Le truc est pas mal compliqué, moi ce que je fais, c'est que avant de
manipuler des données, quand j'ai des controles validators sur la page,
je fais un

page.validate

puis un

if not page.isvalid then exit sub 'ou dans le genre



j'espere avoir répondu à la question



++

<hr>
Cyril - MCP ASP.net
Webmaster de : Hoshimi.CodeS-SourceS.fr
0
daivil Messages postés 87 Date d'inscription mardi 25 juin 2002 Statut Membre Dernière intervention 4 juin 2005
7 mars 2005 à 17:47
Le problème est que je n'ai aucun Control Validator...

Le code est plutot simple en plus :





Tapez ici votre adresse Email





Malgré ca, pas moyen de faire quelque chose qui fonctionne avec IE...


-- Devil --
0
Rejoignez-nous