|
FOROS PROFESIONALES WINDEV, WEBDEV y WINDEV Mobile |
| | | | | |
Inicio → WEBDEV 2024 → [WB90034J] Code image cliquable réinitialise champ interrupteur...? |
[WB90034J] Code image cliquable réinitialise champ interrupteur...? |
Iniciado por aa, 26,oct. 2005 19:30 - 4 respuestas |
| |
| | | |
|
| |
Publicado el 26,octubre 2005 - 19:30 |
Bonjour à tous,
Je dois intégrer dans un site dynamique un carte permettant une sélection multiple de régions.
Soit un champ image cliquable "cimgcCarte" avec définition de map areas et un champ interrupteur "cinteRégions" (qui sera caché dans le traitement final) qui comporte en options les différentes régions gérées.
Je veux utiliser l'instruction serveur "ImageZone()" pour exécuter des opérations sur les options de mon interrupteur en fonction de la zone cliquée. Soit un traitement du style:
--- DEBUT CODE --- // Variable(s) nécessaire(s) au traitement nZone est un entier // numéro de la zone cliquée
// Récupération de la zone cliquée nZone = ImageZone() --- FIN CODE ---
Mais lorsque j'essaie de traiter les options de l'interrupteur, il y a échec car celui-ci est réinitialisé!
C'est facile à reproduire en tapant dans le code de clic du champ cliquable le traitement suivant (simplifié à l'extrême pour isoler le problème), destiné à tester si on a déjà cliqué sur une région donnée ou non, autrement dit si l'option d'interrupteur correspondante est à "vrai".
--- DEBUT CODE --- SI cinteRégions[1] = vrai ALORS cinteRégions[1] = faux SINON cinteRégions[1] = vrai FIN
SI cinteRégions[2] = vrai ALORS cinteRégions[2] = faux SINON cinteRégions[2] = vrai FIN --- FIN CODE ---
(Il y a bien sûr des tas de variantes plus ou moins intelligentes à ce code, c'est juste pour tester! Et par ailleurs, le fait d'utiliser la propriété "..valeur" ne change rien à ce qui suit.)
A mon grand désespoir, lorsque ce code est lancé depuis l'image cliquable, le champ interrupteur est réinitialisé AVANT exécution du code, l'utilisateur perdant ainsi sa sélection de régions.
Si par contre on crée un champ image "normal" dans lequel on place la carte et au-dessus duquel on "pose" des boutons transparents avec le nom des régions, avec dans le code de clic du bouton le même code que ci-dessus, les options de l'interrupteur sont correctement évaluées et/ou mises à jour.
Quelqu'un sait-il pourquoi l'interrupteur est réinitialisé lorsque le code est lancé depuis le champ cliquable? Une idée pour me sortir de là sachant que je ne peux pas utiliser la solution boutons donnée ci-avant - je suis obligé d'utiliser les maps areas et l'instruction ImageZone().
Merci à tous!
Alex |
| |
| |
| | | |
|
| | |
| |
Publicado el 27,octubre 2005 - 12:44 |
l'image clicable malheureusement ne synchronise pas les champ de la page , c a d elle envoi pas les valeur des champs en code serveur .
exemple interepteur = 0
affiche image
interepteur = 1 ( en code serveur)
clic image
surprise le champ interepteur = 0 toujours
car le clic image ne renvoi pas la valeur 1 pour synchronisé l'interepteur ,
la seul solution c est d'ajouter un évènement serveur après le changement d'interepteur et avant le clic sur l image , cette évènement a pour bute la synchronisation des champs de la page entre la version client et la version serveur.
Abdelhakim |
| |
| |
| | | |
|
| | |
| |
Publicado el 27,octubre 2005 - 17:51 |
Salut,
as-tu essayé de changer, sous la description de ton champ image clicable, le "Mode de fonctionnement" en "Zone de clicage(Envoi des coordonnées du clic au serveur)" ?
Bon dev,
Olivier
Alexis a écrit :
Bonjour à tous,
Je dois intégrer dans un site dynamique un carte permettant une sélection multiple de régions.
Soit un champ image cliquable "cimgcCarte" avec définition de map areas et un champ interrupteur "cinteRégions" (qui sera caché dans le traitement final) qui comporte en options les différentes régions gérées.
Je veux utiliser l'instruction serveur "ImageZone()" pour exécuter des opérations sur les options de mon interrupteur en fonction de la zone cliquée. Soit un traitement du style:
--- DEBUT CODE --- // Variable(s) nécessaire(s) au traitement nZone est un entier // numéro de la zone cliquée
// Récupération de la zone cliquée nZone = ImageZone() --- FIN CODE ---
Mais lorsque j'essaie de traiter les options de l'interrupteur, il y a échec car celui-ci est réinitialisé!
C'est facile à reproduire en tapant dans le code de clic du champ cliquable le traitement suivant (simplifié à l'extrême pour isoler le problème), destiné à tester si on a déjà cliqué sur une région donnée ou non, autrement dit si l'option d'interrupteur correspondante est à "vrai".
--- DEBUT CODE --- SI cinteRégions[1] = vrai ALORS cinteRégions[1] = faux SINON cinteRégions[1] = vrai FIN
SI cinteRégions[2] = vrai ALORS cinteRégions[2] = faux SINON cinteRégions[2] = vrai FIN --- FIN CODE ---
(Il y a bien sûr des tas de variantes plus ou moins intelligentes à ce code, c'est juste pour tester! Et par ailleurs, le fait d'utiliser la propriété "..valeur" ne change rien à ce qui suit.)
A mon grand désespoir, lorsque ce code est lancé depuis l'image cliquable, le champ interrupteur est réinitialisé AVANT exécution du code, l'utilisateur perdant ainsi sa sélection de régions.
Si par contre on crée un champ image "normal" dans lequel on place la carte et au-dessus duquel on "pose" des boutons transparents avec le nom des régions, avec dans le code de clic du bouton le même code que ci-dessus, les options de l'interrupteur sont correctement évaluées et/ou mises à jour.
Quelqu'un sait-il pourquoi l'interrupteur est réinitialisé lorsque le code est lancé depuis le champ cliquable? Une idée pour me sortir de là sachant que je ne peux pas utiliser la solution boutons donnée ci-avant - je suis obligé d'utiliser les maps areas et l'instruction ImageZone().
Merci à tous!
Alex
|
| |
| |
| | | |
|
| | |
| |
Publicado el 27,octubre 2005 - 22:37 |
OK mais dans ce cas je ne peux plus utiliser les "map areas" - je dois gérer un traitement prise de tête tel que dans l'exemple "wwzoom" livré avec WebDev, avec double carte, gestion de couleurs et pire de trames si je dépasse les n couleurs de base correspondant aux "iQqch".
Pas cool.
Merci pour ton aide
Alex |
| |
| |
| | | |
|
| | |
| |
Publicado el 27,octubre 2005 - 22:39 |
euh... tu aurais un exemple dans ce cas précis?
merci pour ton aide
Alex |
| |
| |
| | | |
|
| | | | |
| | |
| | |
| |
|
|
|