IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Compatibilité Chrome et IE


Sujet :

JavaScript

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    72
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 72
    Par défaut Compatibilité Chrome et IE
    Bonjour,

    Voila j'ai ce bout de code qui fonctionne sous Firefox mais pas sous chrome et IE :
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <select name="choix1" id="Choix">
    	<option>Choix1</option><option>Choix2</option>
    </select>
    <select name="options1" id="Option";">
    	<option>Option1</option><option<Option2</option>
    </select>	
    <button onclick="javascript:location.reload();">OK</button>
    </p>

    Quand l'utilisateur selectionne le choix 2 et clique sur le bouton, la page est rafraichit et le choix 1 est sélectionné par défaut.
    Sous Firefox le choix 2 reste sélectionné après clique sur le bouton.

    Une idée ?

  2. #2
    Expert confirmé
    Avatar de Watilin
    Homme Profil pro
    En recherche d'emploi
    Inscrit en
    Juin 2010
    Messages
    3 094
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : En recherche d'emploi

    Informations forums :
    Inscription : Juin 2010
    Messages : 3 094
    Par défaut
    Épineux problème que celui du repositionnement des contrôles de formulaire après un rafraîchissement. Le navigateur doit-il revenir aux valeurs par défaut ? Ou garder en mémoire les choix de l'utilisateur ? Différents navigateurs ont différentes politiques vis-à-vis de cette question.

    De plus, l'utilisateur peut paramétrer son navigateur pour retenir ou non les valeurs. En tant que développeurs, on n'a généralement pas ou peu de contrôle sur ce qui touche aux préférences de l'utilisateur. Et c'est normal.

    Je vois bien une solution, mais pas en JavaScript. Côté serveur, tu peux ajouter un attribut selected à la balise option qui correspond à la valeur reçue par le serveur (dans les données GET ou POST selon la méthode de ton formulaire).

    Attention, les formulaires et les rafraîchissements ne font pas bon ménage, ça a tendance à afficher une fenêtre indiquant « les données vont être renvoyées » ou quelque chose du style, assez déroutante ou agaçante pour l'utilisateur. Je te conseille de rechercher une approche un peu plus souple ; un reload est rarement nécessaire.
    La FAQ JavaScript – Les cours JavaScript
    Touche F12 = la console → l’outil indispensable pour développer en JavaScript !

  3. #3
    Expert confirmé
    Avatar de javatwister
    Homme Profil pro
    danseur
    Inscrit en
    Août 2003
    Messages
    3 684
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : danseur

    Informations forums :
    Inscription : Août 2003
    Messages : 3 684
    Par défaut
    d'accord avec tout,

    et en plus, ce morceau de code - j'imagine que tu as enlevé des lignes importantes? - a un sens secret qui m'échappe;

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    72
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 72
    Par défaut
    en faite j'ai juste en dessous mon javascript :

    <script src="js/_gz_d3.v3.min.js"></script>
    ...
    <script>

    Qui sur rafraichissement de la page me génère un graphique suivant les choix utilisateurs.
    Comme je débute, je trouvais cela plus simple

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    72
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 72
    Par défaut
    Du coup je ne sais pas si c'est la meilleure solution mais j'ai fait cela :

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <select name="choix1" id="Choix">
    	<option>Choix1</option><option>Choix2</option>
    </select>
    <select name="options1" id="Option";">
    	<option>Option1</option><option<Option2</option>
    </select>	
    <button onclick="MonScript">OK</button>
    <script src="js/_gz_d3.v3.min.js"></script>
    <script>
    function MonScript()
    {
    ...
    }
    </script>

  6. #6
    Expert confirmé
    Avatar de javatwister
    Homme Profil pro
    danseur
    Inscrit en
    Août 2003
    Messages
    3 684
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : danseur

    Informations forums :
    Inscription : Août 2003
    Messages : 3 684
    Par défaut
    ce qui est extraordinaire, c'est que tu ne parles pas du code javascript dans ta demande!

    Qu'y a-t-il pour ton service?

Discussions similaires

  1. [CSS 2] Formulaire / Compatibilité Chrome / Firefox
    Par Thib344 dans le forum Mise en page CSS
    Réponses: 6
    Dernier message: 14/06/2012, 15h58
  2. Compatibilité Safari / Chrome
    Par Fafhrd dans le forum JSF
    Réponses: 9
    Dernier message: 31/05/2010, 13h07
  3. Problème compatibilité Ie8 avec FF et Chrome
    Par solorac dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 11/08/2009, 10h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo