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é sous Firefox


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Inscrit en
    Août 2008
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 8
    Par défaut Compatibilité sous Firefox
    Bonjour à tous,

    A mon grand étonnement, j'ai un problème de compatibilité avec Firefox alors que tout fonctionne parfaitement sous IE.

    Voilà, j'ai un script qui vérifie les champs entrés par les internautes sur mon formulaire, et lorsqu'il s'agit de champs select, Firefox ne le détecte pas...

    Voici mon JS :
    <script language="javascript">
    // VERIFICATION DES CHAMPS DU FORMULAIRE

    // Application d'une couleur aux champs erronés ou vides
    function couleur(obj) {
    obj.style.backgroundColor = "#FFFFFF";
    }

    function check() {
    var msg = "";

    //Vérification du champs civilité
    if (document.contact.civilite.value == "") {
    msg += "Veuillez indiquer votre civilité.\n";
    document.contact.civilite.style.backgroundColor = "#d5dfb6";
    }

    //Vérification du champs nom
    if (document.contact.nom.value == "") {
    msg += "Veuillez saisir votre nom.\n";
    document.contact.nom.style.backgroundColor = "#d5dfb6";
    }

    //Vérification du champs client (déjà client > oui ou non)
    if (document.contact.client.value == "") {
    msg += "Veuillez indiquer si vous êtes déjà client.\n";
    document.contact.client.style.backgroundColor = "#d5dfb6";
    }

    //Vérification : si l'internaute est déjà client et qu'il n'indique pas son numéro client
    if (document.contact.client.value == "Oui") {
    if (document.contact.numClient.value == "") {
    msg += "Vous avez indiqué que vous êtes déjà client. Veuillez saisir votre numéro client.\n";
    document.contact.numClient.style.backgroundColor = "#d5dfb6";
    }
    }

    //Vérification : si l'internaute n'est pas client et qu'il n'indique pas ses coordonnées postales
    if (document.contact.client.value == "Non") {
    if (document.contact.adresse1.value == "") {
    msg += "Vous avez indiqué que vous n'êtes pas client. Veuillez saisir votre adresse.\n";
    document.contact.adresse1.style.backgroundColor = "#d5dfb6";
    }
    if (document.contact.codePostal.value == "") {
    msg += "Vous avez indiqué que vous n'êtes pas client. Veuillez saisir votre code postal.\n";
    document.contact.codePostal.style.backgroundColor = "#d5dfb6";
    }
    if (document.contact.ville.value == "") {
    msg += "Vous avez indiqué que vous n'êtes pas client. Veuillez saisir votre ville de résidence.\n";
    document.contact.ville.style.backgroundColor = "#d5dfb6";
    }
    }

    //Vérification du champs message
    if (document.contact.message.value == "") {
    msg += "Veuillez saisir un message pour que l'on puisse traiter votre demande.\n";
    document.contact.message.style.backgroundColor = "#d5dfb6";
    }

    //Vérification du champs moyenContact (telephone ou email)
    if (document.contact.moyenContact.value == "") {
    msg += "Par quel moyen souhaitez-vous être recontacté ?\n";
    document.contact.moyenContact.style.backgroundColor = "#d5dfb6";
    }

    //Vérification : si l'internaute préfére être recontacté par téléphone mais qu'il laisse le champs vide
    if (document.contact.moyenContact.value == "Téléphone") {
    if (document.contact.telephone.value == "") {
    msg += "Vous avez indiqué que vous souhaitez être recontacté par téléphone. Veuillez saisir votre numéro de téléphone.\n";
    document.contact.telephone.style.backgroundColor = "#d5dfb6";
    }
    }

    //Vérification : si l'internaute préfére être recontacté par email mais qu'il laisse le champs vide
    if (document.contact.moyenContact.value == "Email") {
    if (document.contact.email.value == "") {
    msg += "Vous avez indiqué que vous souhaitez être recontacté par email. Veuillez saisir votre adresse email.\n";
    document.contact.email.style.backgroundColor = "#d5dfb6";
    }
    else if (document.contact.email.value != "") {
    indexAroba = document.contact.email.value.indexOf('@');
    indexPoint = document.contact.email.value.indexOf('.');
    if ((indexAroba < 0) || (indexPoint < 0)) {
    document.contact.email.style.backgroundColor = "#d5dfb6";
    msg += "L'adresse email indiquée n'est pas correcte.\n";
    }
    }
    }

    //Si aucun message d'alerte a été initialisé on retourne TRUE
    if (msg == "") return(true);

    //Si un message d'alerte a été initialisé on lance l'alerte
    else {
    alert(msg);
    return(false);
    }
    }
    </script>

    Et le code de mon formulaire :
    <form action="data/envoiEmail/envoiFormContact.php" method="post" enctype="application/x-www-form-urlencoded" name="contact" onSubmit="return check();">
    <table width="443" border="0" cellspacing="5" cellpadding="0">
    <tr>
    <td width="176">Civilit&eacute;* : </td>
    <td width="252">
    <select name="civilite" class="FormInput" id="civilite" onKeyUp="javascript:couleur(this);" />
    <option>S&eacute;lectionnez une valeur</option>
    <option value="M.">M.</option>
    <option value="Mme">Mme</option>
    <option value="Mlle">Mlle</option>
    </select></td>
    </tr>
    <tr>
    <td>Nom* : </td>
    <td><input name="nom" type="text" class="FormInput" id="nom" size="30" onKeyUp="javascript:couleur(this);" /></td>
    </tr>
    <tr>
    <td>Pr&eacute;nom : </td>
    <td><input name="prenom" type="text" class="FormInput" id="prenom" size="30" onKeyUp="javascript:couleur(this);" /></td>
    </tr>
    <tr>
    <td colspan="2">&nbsp;</td>
    </tr>
    <tr>
    <td>&Ecirc;tes-vous client ?*</td>
    <td><select name="client" class="FormInput" id="client" onKeyUp="javascript:couleur(this);" />
    <option>S&eacute;lectionnez une valeur</option>
    <option value="Oui">Oui</option>
    <option value="Non">Non</option>
    </select></td>
    </tr>
    <tr>
    <td colspan="2">Si vous &ecirc;tes client, veuillez indiquer votre num&eacute;ro client :</td>
    </tr>
    <tr>
    <td>Num&eacute;ro client* </td>
    <td><input name="numClient" type="text" class="FormInput" id="numClient" size="50" onKeyUp="javascript:couleur(this);" /></td>
    </tr>
    <tr>
    <td colspan="2">Si vous n'&ecirc;tes pas client, veuillez pr&eacute;ciser vos coordonn&eacute;es compl&egrave;tes : </td>
    </tr>
    <tr>
    <td>Adresse* : </td>
    <td><input name="adresse1" type="text" class="FormInput" id="adresse1" size="50" onKeyUp="javascript:couleur(this);" /></td>
    </tr>
    <tr>
    <td>&nbsp;</td>
    <td><input name="adresse2" type="text" class="FormInput" id="adresse2" size="50" onKeyUp="javascript:couleur(this);" /></td>
    </tr>
    <tr>
    <td>Code postal* : </td>
    <td><input name="codePostal" type="text" class="FormInput" id="codePostal" size="10" onKeyUp="javascript:couleur(this);" /></td>
    </tr>
    <tr>
    <td>Ville* : </td>
    <td><input name="ville" type="text" class="FormInput" id="ville" size="30" onKeyUp="javascript:couleur(this);" /></td>
    </tr>
    <tr>
    <td colspan="2">&nbsp;</td>
    </tr>
    <tr>
    <td>Votre message : </td>
    <td><textarea name="message" cols="45" class="FormInput" id="message" onKeyUp="javascript:couleur(this);" /></textarea></td>
    </tr>
    <tr>
    <td colspan="2">&nbsp;</td>
    </tr>
    <tr>
    <td>Vous pr&eacute;f&eacute;rez &ecirc;tre recontact&eacute; : </td>
    <td><select name="moyenContact" class="FormInput" id="moyenContact" onKeyUp="javascript:couleur(this);" />
    <option>S&eacute;lectionnez une valeur</option>
    <option value="T&eacute;l&eacute;phone">T&eacute;l&eacute;phone</option>
    <option value="Email">Email</option>
    </select></td>
    </tr>
    <tr>
    <td>Indiquez votre t&eacute;l&eacute;phone* :</td>
    <td><input name="telephone" type="text" class="FormInput" id="telephone" size="30" onKeyUp="javascript:couleur(this);" /></td>
    </tr>
    <tr>
    <td>ou votre email* :</td>
    <td><input name="email" type="text" class="FormInput" id="email" size="30" onKeyUp="javascript:couleur(this);" /></td>
    </tr>
    <tr>
    <td>&nbsp;</td>
    <td align="right"><input name="envoyer" type="image" id="envoyer" style="border: 0" src="data/image/contact/but_envoi_message.png" width="199" height="32" tabindex="11" /></td>
    </tr>
    </table>
    </form>


    Cela fait deux jours que je cherche en vain. Pouvez-vous m'orienter ?

    Merci d'avance pour votre aide !

  2. #2
    Membre éclairé Avatar de Dark Ryus
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2007
    Messages
    333
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2007
    Messages : 333
    Par défaut
    Citation Envoyé par neoxtra Voir le message
    <select name="civilite" class="FormInput" id="civilite" onKeyUp="javascript:couleur(this);" />
    <option>S&eacute;lectionnez une valeur</option>
    <option value="M.">M.</option>
    <option value="Mme">Mme</option>
    <option value="Mlle">Mlle</option>
    </select>

    Moi pour aller chercher la valeur d'un select je fais comma ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById('civilite').options[document.getElementById('civilite').selectedIndex].value
    et sur un select, moi je ferais onchange pour appeler une fonction javascript

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

Discussions similaires

  1. compatibilité Javascript sous Firefox
    Par P3dr0 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 29/01/2011, 22h17
  2. problème avec une page web sous firefox!
    Par 3psilOn dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 24/11/2004, 11h49
  3. Invité de connexion "Adserver" sous FireFox
    Par KibitO dans le forum Administration
    Réponses: 10
    Dernier message: 13/11/2004, 14h19
  4. [HTML]Image qui ne s'affiche pas sous firefox...
    Par OrangeBud dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 13/10/2004, 13h42
  5. Java ne fonctionne pas sous Firefox
    Par Info-Rital dans le forum Applications et environnements graphiques
    Réponses: 2
    Dernier message: 29/07/2004, 23h37

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