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 :

indexOf et firefox : compatibilité ?


Sujet :

JavaScript

  1. #1
    Membre actif Avatar de Nicomart
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    205
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 205
    Points : 210
    Points
    210
    Par défaut indexOf et firefox : compatibilité ?
    Bonjour à tous,

    j'ai un souci dans une fonction (basique) de vérification d'adresse mail dans un formulaire. La voici :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    var adresse = formulaire.email.value;
    var place = formulaire.email.value.indexOf("@",1);
    var point = formulaire.email.value.indexOf(".",place+2);
    if (!((place > -1)&&(adresse.length >2)&&(point > 1))){
    	alert("Veuillez entrer une adresse e-mail valide");
    	document.formulaire.email.focus();
    	return(false);
    }
    Je précise que la variable adresse ne sert plus à rien (comme on peut le voir). Elleremplaçait le formulaire.email.value dans les deux instructions suivantes, avant mes tests de debug.

    Cette fonction fonctionne parfaitement sous IE, mais sous firefox l'exécution est stoppée à la seconde ligne (merci firebug). Y a-t-il un souci de compatibilité entre indexOf et firefox ? et si oui, avez-vous des indications qui pourraient me permettre de le résoudre ? Si non, voyez-vous autre chose dans ce code qui puisse faire bugger l'exécution de la fonction ?

    Merci
    Nicolas

  2. #2
    Expert éminent sénior
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 649
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 649
    Points : 11 138
    Points
    11 138
    Par défaut
    bonjour,

    tu as plus compliqué mais visiblement plus efficace :
    http://www.developpez.net/forums/sho...d.php?t=375134

  3. #3
    Membre actif Avatar de Nicomart
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    205
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 205
    Points : 210
    Points
    210
    Par défaut
    ^^ effectivement, pour le "plus compliqué", il n'y a pas photo pour le "plus efficace", je te crois sur parole. Je vais tenter cette fonction...
    Merci

  4. #4
    Membre actif Avatar de Nicomart
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    205
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 205
    Points : 210
    Points
    210
    Par défaut
    Bravo et merci, ça fonctionne parfaitement. Ceci dit, si quelqu'un peut me dire pourquoi mon indexOf était refusé par ff, ça m'intéresserait... Je suis du genre curieux et têtu

    Enfin, le principal, c'est que ça marche

  5. #5
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    pas de souci avec indexOf ... ???

    testé sous IE et FFX
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
     
    <script type='text/javascript'>
    function verif(){
    var formulaire=document.forms[0];
    var adresse = formulaire.elements['email'].value;
    var place = formulaire.elements['email'].value.indexOf("@",1); 
    var point = formulaire.email.value.indexOf(".",place+2); 
    if (!((place > -1)&&(adresse.length >2)&&(point > 1))){ 
    		 alert("Veuillez entrer une adresse e-mail valide");
    		  formulaire.elements['email'].focus();
    		   return(false);
    		   }
    else {alert('ok')}		   
    }
    </script>
     
    </head>
     
    <body>
    <form >
    <input type='text' name='email' />
    <input type='button' onclick='verif()' />
    </form>
    </body>
    sans doute plus un souci de syntaxe pour l'appel des objets ...

    c'est moyen ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  6. #6
    Expert éminent sénior
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 649
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 649
    Points : 11 138
    Points
    11 138
    Par défaut
    Citation Envoyé par Nicomart
    Bravo et merci, ça fonctionne parfaitement. Ceci dit, si quelqu'un peut me dire pourquoi mon indexOf était refusé par ff, ça m'intéresserait... Je suis du genre curieux et têtu
    tu as raison

    as-tu essayé avec le caractère d'échappement (même si j'ai un doute que cela vienne de là) :
    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    formulaire.email.value.indexOf("\.",place+2);
    ?

    Sinon, quelle erreur est renvoyée ?

    [edit]Je crois que Spacefrog (qui m'a grillé ) est plus proche de la vérité. Ceci dit utilise plutôt les id que les name pour accèder à un élément de ton formulaire.
    [/edit]

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

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 2 532
    Points : 3 239
    Points
    3 239
    Par défaut
    C'est pas indexOf qui foire, à mon avis, c'est formName.elementName

    La syntaxe officielle est documents.forms["formName"].elements["elementName"]
    Fremy
    Pour vos développements Web et une navigation agréable, le tout gratuit :
    1) IE 8 + IE7Pro (Si vous ne connaissez pas IE7Pro, essayez !)
    2) FF 3 + Web Developper Toolbar + AdBlockPlus + FireBug + GreaseMonkey

  8. #8
    Expert éminent sénior
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 649
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 649
    Points : 11 138
    Points
    11 138
    Par défaut
    Spacefrog et Fremy confirment... je me suis planté : ça ne vient pas de indexOf.

  9. #9
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    merci de la confirmation fremy
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  10. #10
    Membre actif Avatar de Nicomart
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    205
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 205
    Points : 210
    Points
    210
    Par défaut
    je retente avec l'ancien code et .elements dès que j'ai un peu de temps, et je vous dis ça

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

Discussions similaires

  1. Compatibilité Internet explorer et Mozilla Firefox
    Par Furius dans le forum Général JavaScript
    Réponses: 17
    Dernier message: 29/12/2005, 13h29
  2. [IE-FIREFOX] background problème de compatibilité
    Par sanosuke85 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 07/11/2005, 21h13
  3. [FLASH MX2004] [flashvars] Compatibilité Firefox / IE
    Par CUCARACHA dans le forum Flash
    Réponses: 4
    Dernier message: 20/10/2005, 12h03
  4. [FLASH] Probleme compatibilité flash/firefox
    Par Benestcon dans le forum Flash
    Réponses: 4
    Dernier message: 17/10/2005, 14h53

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