PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WEBDEV 2024 → Champ saisie, évènement manquant.
Champ saisie, évènement manquant.
Débuté par Zack, 10 sep. 2018 03:58 - 3 réponses
Membre enregistré
127 messages
Popularité : +4 (6 votes)
Posté le 10 septembre 2018 - 03:58
Bonjour,

J’ai un problème avec le champ saisie, voilà j’utilise la saisie assistée et lier à ma table, mais l’événement saisie dispose seulement de l’évènement onchange en sortie…..

Je ne comprends pas pourquoi le champ ne dispose pas de l’évènement onchange seulement que la plupart des autres langages utilisent.
Le problème c’est que lorsque l’usager tape dans le champ saisie et la saisie assister lui propose des choix…. Je dois après ce choix exécuté un traitement d’une procédure, mais ça ne fonctionne pas. L’usager doit impérativement sortir du champs pour que ma procédure s’exécute…

Mais ce genre de problème me donne des maux de tête, car les usagés qui ne sont pas habitués à ce genre d’évènement vont appeler mon client et lui dire qu’il y a un bogue…. Ce que je ne veux pas.

Ultimement j’ai décidé d’utiliser dans le Chargement de la page….

//WL Chargement (Onload) de PAGE_Principale (Navigateur)
JSEvénement(selectclientclick,jsEvénementDocument,jsEvénementClic)

Procedure selectclientclick(pclEvenementJS est un objet dynamique <utile>)
SI SAI_De <> "" ALORS
sResult est une chaîne = AJAXExecute(ajaxActualiseChamps, verifieclientinfo,SAI_De,ZTR_Adresse_De,1)

SI sResult = "-1" ALORS
ZTR_Adresse_De = "Adresse introuvable"
SAI_De = ""
SINON
ZTR_Adresse_De = sResult
ZTR_Adresse_De..Visible = Vrai
FIN
FIN

FIN

De plus je ne connais pas pcl, normalement je devrai être en mesure de choisi quel bouton de souris a été cliqué ou des trucs du genre, mais aucune info disponible dans la doc de PcSoft.

Je trouve ce code non performant et je dois tout de même faire de la validation en plus, car je ne veux pas que AJAXExécute s'exécute à chaque fois que l'événement déclenche ma fonction. J'aimerais mieux intercepter le clique lors de la sélection de la saisie assistée..... Quelqu'un a une autre façon de procéder moins laborieuse ?

À cause d'un évènement manquant, je me retrouve avec un casse-tête....... PcSoft aurait dû inclure l'événement onchange point.... Je ne comprends pas il est disponible en JavaScript, mais pas sous webdev... Je suis presque sûr que dans la 23 ce n’est toujours pas dispo.

Merci.
Membre enregistré
2 messages
Posté le 13 septembre 2018 - 15:12
Bonjour,
J'ai exactement le même problème.
Je confirme l'événement n'existe pas en 23.
Avez-vous trouvé une autre solution?
Membre enregistré
950 messages
Popularité : +53 (63 votes)
Posté le 13 septembre 2018 - 15:40
Bonjour,

Et de rajouter l'evenement "touche relaché" sur le champs de saisie ?

jordan
Membre enregistré
2 messages
Posté le 13 septembre 2018 - 16:13
L'événement "touche relachée" permet de mettre à jour la liste assistée sans problème et si la sélection se fait au clavier, il peut aussi déclencher aussi le traitement désiré suite à une sélection (en analysant la chaine dans le champ).

Le problème intervient quand la sélection dans la liste est faite avec la souris :
- sur "bouton (souris) relaché" le champ n'est pas encore mis à jour... donc on se sait pas ce qui a été sélectionné

Pour l'instant, j'ai fait une "bidouille" sur "souris déplacée dans la page". Quand on clique pour sélectionner, quasiment à chaque fois, on bouge la souris de quelques pixels juste après..

Oui, je sais, c'est très moche... Mais je n'ai rien trouvé de plus fonctionnel jusqu'à maintenant...

Tout ça, parce qu'il n'y a pas d'événement "on change"...