Bonjour,
J'ai un champ de type input text sur lequel je souhaite faire un certain nombre de contrôles, bloquants ou non au moment où je tente de sortir du champ.
J'ai donc le code suivant :
Code html : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 <input type="text" onchange=" if (untest()) { alert('un message'); this.focus(); return false; } unautrecontrole(); return true; "/>
Je veux que le contrôle "untest()" soit bloquant.
Mais "unautrecontrole()" doit simplement afficher une alert, mais laisser l'utilisateur continuer ce qu'il était en train de faire.
Voici les scénario :
-> Sortie du champ avec clic souris hors du champ : OK
-> Sortie du champ avec la touche tabulation : OK
-> Tentative de soumission du formulaire depuis le champ en frappant la touche entrée : OK
-> Tentative de soumission du formulaire depuis le champ en cliquant sur le bouton submit : KO
Lorsque "unautrecontrole()" affiche l'alert, pas moyen de soumettre le formulaire par clic sur le bouton submit lorsque le focus est dans le champ texte.
Comment remédier à ce problème ? J'avoue que je ne comprends pas ce qui cloche.
A noter que seul IE est utilisé sur ce site (page d'un ERP qui ne supporte que IE), c'est donc le comportement non standard de IE qui doit être pris en compte.
J'imagine qu'il y a un truc avec le "bouillonnement" des évéments qui manque, mais je vois pas quoi, d'autant qu'avec la touche entrée ça marche nickel...
Partager