Evénement dans une balise <select ….

HTML5, CSS3, Javascript, support des mobiles... Que penser de votre site ? Vous manquez d'informations pour la construction d'un site qui puisse s'afficher correctement partout ? C'est un problème simple, un peu complexe ? Venez ici !
scn68100
Arias
Messages : 12
Inscription : 20 juin 2012, 14:28

Evénement dans une balise <select ….

Message par scn68100 »

Bonjour,
J'ai mis l'événement Double clique dans une balise select
J'ai bien la bonne réaction sous Internet Explorer et Google Chrome, mais rien sous FireFox !
Même si je remplace le ondblclick par un onchange !
Une aide ? Merci
Voici un petit exemple

Code : Tout sélectionner

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta content="fr" http-equiv="Content-Language" />
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<title>sans titre 1</title>
</head>
<body>
	<select name="Select1" style="width: 138px" ondblclick="location.href='http://www.google.fr'" >
		<option selected="selected">Poire</option>
		<option>Pomme</option>
	</select>
</body>
</html>
PS
Cordialement
Sauveur
calimo
Animal mythique
Messages : 14118
Inscription : 26 déc. 2003, 11:51

Re: Evénement dans une balise <select ….

Message par calimo »

Hello,

Déjà ton code est invalide, il manque la déclaration XML et la balise de fermeture </html>.

Ensuite, c'est apparamment un bug connu.

Ça ne fonctionne pas non plus dans Opera, Chromium, Konqueror… n'ayant ni IE ni chrome je ne sais pas comment ça marche sur ces deux navigateurs, et je ne suis pas sûr de bien comprendre l'utilité de faire un double click sur un select, ça n'a pas trop de sens étant donné qu'un clic simple modifie déjà l'affichage du select (affiche ou cache les options)… :roll:
Pas facile de proposer une solution alternative dans ces conditions, mais je suis sûr que ça existe ;-)
scn68100
Arias
Messages : 12
Inscription : 20 juin 2012, 14:28

Re: Evénement dans une balise <select ….

Message par scn68100 »

Bonjour,
Merci d'avoir répondu

Balise XML ? Hum, j'utilise Microsoft Expression Web 4, et quand je demande une nouvelle page HTML, il ne donne pas ce genre de balise ….
La balise </html> est bien dans mon code, c'est la dernière ligne …

Avant de mettre ma question sur le forum, j'ai bien sûr fait plusieurs recherches sur le web
Y compris dans ce forum, et je n'ai rien trouvé
Sans doute ais-je mal posé la question

Pourquoi cet évènement Double Clique dans une liste déroulable ?
• Le simple clique permet de changer la sélection, et ne peut donc être utilisé
• Le ONCHANGE n'est pas actif s'il y a un seul item
• Après avoir sélectionné une valeur, l'utilisateur fait un double clique, et je peux chaîner sur un traitement particulier

Je vais essayer de contourner ce problème, sinon je conseillerais aux clients de changer de navigateur ...
Cordialement
Sauveur
calimo
Animal mythique
Messages : 14118
Inscription : 26 déc. 2003, 11:51

Re: Evénement dans une balise <select ….

Message par calimo »

scn68100 a écrit :Balise XML ? Hum, j'utilise Microsoft Expression Web 4, et quand je demande une nouvelle page HTML, il ne donne pas ce genre de balise ….
La balise </html> est bien dans mon code, c'est la dernière ligne …
Mouarf ! J'avais pas vu la barre de défilement :oops:
Quand tu fais un fichier XML (comme par exemple un XHTML) il y a normalement une déclaration XML. Mais ce n'est pas ce qui nous intéresse ici.
scn68100 a écrit :Pourquoi cet évènement Double Clique dans une liste déroulable ?
• Le simple clique permet de changer la sélection, et ne peut donc être utilisé
• Le ONCHANGE n'est pas actif s'il y a un seul item
• Après avoir sélectionné une valeur, l'utilisateur fait un double clique, et je peux chaîner sur un traitement particulier
C'est assez bizarre comme workflow. Pourquoi pas un bouton <input type="submit"> pour valider après la sélection ? Personellement je déteste les onchange qui ne laissent pas droit à l'erreur (ça arrive plus souvent qu'on pense).
Sinon tu peux changer l'attribut size. Par défaut c'est 1, mais si tu mets 2 tu n'as plus une liste déroulante mais une liste à choix. Tant que tu ne mets pas multiple, l'utilisateur ne peut en sélectionner qu'une. Le onclick devrait logiquement fonctionner dans ce cas.
scn68100
Arias
Messages : 12
Inscription : 20 juin 2012, 14:28

Re: Evénement dans une balise <select ….

Message par scn68100 »

Bonjour CALIMO,

Hélas, ce n'est pas aussi simple que cela …
En gros, j'ai une ligne avec plusieurs DROP-DOWN BOX, qui se répète autant de fois qu'il y a d'enregistrement dans la base de données
Je ne peux mettre <SIZE="2" car, si cela facilite le choix de l'utilisateur, le développent de la liste va chevaucher la ligne du dessous
Le nombre d'item dans chaque select est aléatoire, c’est-à-dire qu'il dépend de ce que je trouve dans la base
Mettre un bouton SUBMIT est effectivement une solution, mais cela m'oblige soit à mettre un bouton sous chaque DROP-DOWN BOX, et perte de place. Et il faut aussi que je "récupère" la valeur du DROP-DOWN BOX
Soit un bouton pour l'ensemble de la page, mais alors là, savoir quel est le DROP-DOWN BOX concerné, et récupérer sa valeur ….

Pour avoir une idée, voici la copie d'écran (Je vais essayer le message privé, car fichier joint j'ai d^passé le quota (?), et je ne sais pas mettre l'image dans le corps du message …)
L'utilisateur choisit un enfant ou un conjoint ou le père ou la mère (Son indicatif) et un double clique lui rend la ligne pour cette personne

La solution du Double Clique est la plus simple, même si effectivement il peut arriver une erreur de choix
Mais ce n'est pas dramatique, car si la page présentée n'est pas la bonne, l'utilisateur peut revenir par la flèche de navigation

Grace au lien donné, j'ai pu voir que ce bug a été signalé de 2004 à 2009 !
Pourquoi n'y a-t-il pas eut de correction ? Une adresse où réclamer ?

Si jamais on peut me donner une solution ! Car certaines personnes vont rechigner à installer un autre navigateur …
Cordialement
Sauveur
calimo
Animal mythique
Messages : 14118
Inscription : 26 déc. 2003, 11:51

Re: Evénement dans une balise <select ….

Message par calimo »

Je vois à peu près. Je n'ai pas en tête de site qui fait des choses de ce style, mais je suis sûr que tu n'es pas le premier à faire ce genre de truc, donc tu devrais pouvoir en trouver pour t'inspirer de la manière dont ils ont contourné le problème.
Autre option : s'il n'y a qu'une option, passer directement à l'étape suivante ?

En tous les cas, si tu n'as pas la place de mettre un bouton pour valider, c'est que ton interface est trop chargée. Ne surcharge pas les pages. C'est démoralisant pour les utilisateurs qui risquent d'être perdus dans tout ce contenu. Essaye au contraire de trouver quelques grandes étapes dans la sélection, et sépare-les sur plusieurs pages, avec un indicateur de la progression.
Comme par exemple sur Amazon où lorsque tu passes commande, tu as une barre qui dit Bienvenue > Adresse > Articles > Emballage > Livraison > Paiement > Validation. Cela permet de savoir où l'on se trouve du processus. Si tout était sur une seule page tout serré, et que les utilisateurs devaient deviner qu'ils doivent double-cliquer sur leur numéro postal pour valider, personne ne passerait jamais commande :wink:

Bref, essaye de prendre un peu de recul et de repenser ce que tu veux faire, et surtout comment le faire idéalement pour tes utilisateurs, plutôt que de te bloquer à comment c'est le plus rapide pour toi ;-) Eh oui, c'est pas facile, mais c'est aussi ça le boulot d'un développeur web ! :wink:

PS : le bug n'est pas corrigé parce que 1) personne n'a eu le temps de le faire et 2) il est d'une trop faible importance pour que quelqu'un ait décidé de s'y coller (c'est d'ailleurs la raison du nº1). (et on peut ajouter 3) qui aurait l'idée de double-cliquer sur une liste déroulante de toutes façons ? Il ne faut pas réinventer la manière dont l'utilisateur se sert de son interface, au contraire suivre les conventions est bien souvent un gage de réussite).
scn68100
Arias
Messages : 12
Inscription : 20 juin 2012, 14:28

Re: Evénement dans une balise <select ….

Message par scn68100 »

Hélas, la présentation de la page est je pense la plus convivial pour l'utilisateur …
Je ne vois pas trop comment contourner ce problème
Je vais mettre l'image de la copie d'écran sur un site pour donner un aperçu
(Je suis en phase de tests, peut pas donner de lien)
Merci de s'intéresser à ce cas

http://aocorticoniconsalvi.free.fr/FireFox/Choix.jpg
Cordialement
Sauveur
Asumbaa
Tyrannosaurus Rex
Messages : 2411
Inscription : 08 déc. 2004, 20:07

Re: Evénement dans une balise <select ….

Message par Asumbaa »

Salut,

Personnellement, j'utiliserais des listes simples avec premier choix neutre (type "-- choix --"), et action sur le onchange.
Avec les bénéfices suivants :
- action de choix claire et effective
- utilisation classique d'un formulaire, que tes utilisateurs seront capables de comprendre et même d'anticiper
- accessible au clavier
- ne surcharge pas trop l'interface
- compatible tous navigateurs
calimo
Animal mythique
Messages : 14118
Inscription : 26 déc. 2003, 11:51

Re: Evénement dans une balise <select ….

Message par calimo »

Encore une question : que se passe-t-il exactement au double-clic ? Par exemple sur 17 mai 1978 ? On est redirigé vers une liste de tous les mariages ce jour là ? Et quelles sont les autres valeurs présentes, peut-on par exemple les changer ? Je vois pas trop l'avantage par rapport à du banal texte dans ce cas... :?:
scn68100
Arias
Messages : 12
Inscription : 20 juin 2012, 14:28

Re: Evénement dans une balise <select ….

Message par scn68100 »

JE NE PEUX PAS utiliser le ONCHANGE !
S'il n'y a qu'un item dans la liste, pas de ONCHANGE ……..
Donc, pour avoir cet événement, il faudrait que je force à "blanc" le premier item !!
Mais dans ce cas, l'utilisateur va croire qu'il n'y a pas d'individu, et ne va pas penser à vérifier !
Ou alors, il va falloir qu'il vérifie tous les items à blanc !!!

Le Double Clique n'est intercepté que pour conjoint, enfant, mère ou père.
L'entête supérieur de la colonne le rappel
Pour eux, un Double Clique sur l'indicatif renvoi la ligne "individu". J'ai refait le lien sur un montage qui donne les deux affichages
Le Double Clique rend donc une ligne individu (Exemple, voir l'enfant 218 du 217)
Image

Pourquoi le même type d'affichage pour les dates et lieux d'union ?
Là, ce n'est pas pour gérer un événement, mais pour profiter d'une "réduction" de l'affichage
En effet, grâce à cela je n'utilise qu'une ligne, même si la personne s'est marié plusieurs fois, et a donc plusieurs lieux et date de mariage

Franchement, je ne vois pas comment changer cette disposition
Le contrôle <SELECT…. Est celui qui me permet d'afficher plusieurs informations sur une même ligne
Je ne vois d'autres contrôles ou d'autres moyens pour rendre cela
Comment faire pour dire que X s'est marié avec Mme Y, mais aussi avec X, W, ....
Ou alors que X a pour enfant le n°10, mais aussi le 255, 30,8 .....
Un TEXT AERA ? Une fenêtre Pop-up ? Le rendu et la convivialité seraient bien moindres !
Cordialement
Sauveur
calimo
Animal mythique
Messages : 14118
Inscription : 26 déc. 2003, 11:51

Re: Evénement dans une balise <select ….

Message par calimo »

scn68100 a écrit :Pourquoi le même type d'affichage pour les dates et lieux d'union ?
Là, ce n'est pas pour gérer un événement, mais pour profiter d'une "réduction" de l'affichage
En effet, grâce à cela je n'utilise qu'une ligne, même si la personne s'est marié plusieurs fois, et a donc plusieurs lieux et date de mariage
Problème : il faut cliquer pour voir qu'une personne s'est remariée. Si tu mets du texte simple (en fait, un "bête" lien), tu vois du premier coup qui s'est remarié (et combien de fois). L'argument de la place verticale ne tient pas, la plupart des gens ayant manifestement deux lignes sur la naissance et le décès, la "perte" de place ne sera que rare. :wink:

Avec du texte, tu as quelque chose de beaucoup plus lisible qui compensera largement l'encombrement supplémentaire (très faible de toutes façons) :)
scn68100
Arias
Messages : 12
Inscription : 20 juin 2012, 14:28

Re: Evénement dans une balise <select ….

Message par scn68100 »

Et pour les enfants ? Je met entre 3 et 5 ligne, en moyenne ?
Cordialement
Sauveur
calimo
Animal mythique
Messages : 14118
Inscription : 26 déc. 2003, 11:51

Re: Evénement dans une balise <select ….

Message par calimo »

Bin c'est à toi de voir, si tu es absolument convaincu que ton idée de double-clic sur une liste déroulante est bonne je ne vais pas me battre pour te faire comprendre le contraire :wink:
scn68100
Arias
Messages : 12
Inscription : 20 juin 2012, 14:28

Re: Evénement dans une balise <select ….

Message par scn68100 »

Mais non, je n'ai simplement pas trouvé d'autre solution
Si on me donne un exemple sans liste déroulable, qui reste quand même convivial pour l'utilisateur, c'est à dire qu'il ne soit pas obligé de jouer de l'ascenseur dès que l'on rend plus de trois personnes, je suis preneur
J'attends donc un modèle de page
Il ne suffit pas d'affirmer, il faut proposer quelque chose de concret
Merci
Cordialement
Sauveur
calimo
Animal mythique
Messages : 14118
Inscription : 26 déc. 2003, 11:51

Re: Evénement dans une balise <select ….

Message par calimo »

scn68100 a écrit :Mais non, je n'ai simplement pas trouvé d'autre solution
Je t'en ai pourtant proposé une… :roll:
Il sera très probablement possible d'avoir plusieurs enfants par ligne, donc je ne vois pas le problème. À toi de voir :wink:
Répondre

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 0 invité