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

HTML Discussion :

onChange ne fonctionne pas sous IE7


Sujet :

HTML

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 167
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 167
    Par défaut onChange ne fonctionne pas sous IE7
    Bonjour,

    J'ai utlisé un onchange qui fonctionne très bien sous FF

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input name="f_type"type="radio" value="%" onChange="document.form_modele.submit()" checked> Tous
    Mais sous IE, ca ne fonctionne pas.

    Avec FF Quand je clique sur le bouton radion,, il change d'etat et ca change mais avec IE ca change uniquement si je clique sur la page, n'importe ou.

    Avez vous une idee pourquoi?

  2. #2
    Inactif   Avatar de Deallyra
    Profil pro
    Étudiant
    Inscrit en
    Février 2007
    Messages
    1 997
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 1 997
    Par défaut
    Bonjour,

    Ceci est un problème JavaScript plutôt non?

    Toujours est-il que pour ton problème, on ne peut le résoudre en gardant le OnChange car IE est capricieux ^^
    Il te faut utiliser OnClick
    *Si la réponse vous convient, n'oubliez pas le tag
    *Exprimez vous dans un français correct; on prend le temps de vous lire, prenez le temps de bien écrire.
    *Et comment on interprète votre code? N'oubliez pas la balise!

    *Pour une mise en page simple avec des divs.
    *Pour faire des formulaires xHTML CSS.

  3. #3
    Membre Expert Avatar de Erwan31
    Profil pro
    Inscrit en
    Février 2008
    Messages
    2 177
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 2 177
    Par défaut
    Citation Envoyé par MimiCracra44 Voir le message
    Bonjour,
    Toujours est-il que pour ton problème, on ne peut le résoudre en gardant le OnChange car IE est capricieux ^^
    Il te faut utiliser OnClick
    Non plus (même si c'est du html, penser à écrire les attribut en minuscule pour anticiper une futur évolution vers une syntaxe XML)

    Les scripts ne doivent pas rediriger automatiquement sur une autre page sans qu'il y ait eu interaction avec l'utilisateur. Cela permet respectivement d'éviter que les moteurs de recherche te pénalisent ainsi que la soumission prématurée d'un formulaire, étant donné que certains agents utilisateurs (Navigateurs, lecteurs d'écran...) n'implémentent pas correctement le gestionnaire d'événement onchange. Il vaut mieux donc ajouter en fin de forumlaire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="submit" value="envoi">

  4. #4
    Membre Expert
    Avatar de FremyCompany
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    2 532
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 2 532
    Par défaut
    Bien sur que si on peut très bien envoyer un formulaire sans l'accord de l'utilisateur. Ce serait un comble qu'on ne puisse pas

    Juste que normallement, il vaut mieux respecter les standards du Web et faire les choses dans les règles :
    - Si form_modèle est un ID :
    Code JavaScript : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById('form_modele').submit();
    - Si form_modèle est un name :
    Code JavaScript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    document.getElementsByName('form_modele')[0].submit();
    // ou
    document.forms['form_modele'].submit();

  5. #5
    Membre Expert Avatar de Erwan31
    Profil pro
    Inscrit en
    Février 2008
    Messages
    2 177
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 2 177
    Par défaut
    Citation Envoyé par FremyCompany Voir le message
    Bien sur que si on peut très bien envoyer un formulaire sans l'accord de l'utilisateur. Ce serait un comble qu'on ne puisse pas
    Tu n'as pas bien compris, ce n'est pas une histoire d'accord ou non de l'utilisateur mais d'intervention
    Même chose avec les pop-up, elle ne doivent pas être lancées sans que
    l'utilisateur ait cliqué quelque part. C'est une règle de base en ergonomie.

  6. #6
    Membre Expert
    Avatar de FremyCompany
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    2 532
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 2 532
    Par défaut
    Sauf que cela est faux pour l'envoi des formulaires.
    Tu peux envoyer un formulaire dans un setTimeout (donc pas d'action utilisateur).

    Pour un popup, c'est vrai, mais un popup ca n'a rien à voir avec un formulaire.

  7. #7
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 931
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 931
    Par défaut
    Citation Envoyé par pierrot10 Voir le message
    avec IE ca change uniquement si je clique sur la page, n'importe ou.
    C'est le principe du onchange dans les input de type text. Il ne s'active qu'à la perte de focus si la valeur a été modifiée.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [CSS 2] Sous menu qui ne fonctionne pas sous IE7
    Par dolphi dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 07/03/2009, 23h06
  2. return confirm ne fonctionne pas sous IE7
    Par mona dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 07/05/2008, 21h49
  3. Formulaire ne fonctionnant pas sous IE7
    Par murdok74 dans le forum Langage
    Réponses: 10
    Dernier message: 05/05/2008, 13h15
  4. Script qui ne fonctionne pas sous IE7
    Par carbaba dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 23/01/2008, 22h50
  5. menu CSS ne fonctionne pas sous IE7
    Par Sniper37 dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 03/08/2007, 10h14

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