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 :

Firefox et champ de saisie


Sujet :

JavaScript

  1. #1
    Nouveau Candidat au Club
    Inscrit en
    Juin 2010
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 4
    Points : 1
    Points
    1
    Par défaut Firefox et champ de saisie
    Dans ma page HTML, j'ai un champ de saisie sur lequel j'appelle une fonction JavaScript (vérification de la saisie) lorsque je sors du champ.

    C'est OK sur IE et Firefox sauf :

    Sur Firefox, lorsque je double clic sur le champ de saisie, une liste des dernières saisies s'affichent et on choisit un des éléments. La fonction JavaScript se lance mais je n'arrive pas à lire le contenu de mon champ de saisie (toujours à blanc sauf en debug avec Firebug???).

    Est-ce que vous avez déjà eu ce problème? Comment récupérer mon texte?

    Merci

  2. #2
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Bonjour et bienvenue sur Developpez.com ,
    désolé mais je ne vais pas répondre directement à ta question (ce comportement est lié au navigateur lui-même).

    Pour effectuer un contrôle de saisie, la règle est d'utiliser l'évènement onsubmit du <form>
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <form action="..." onsubmit="return verif();">
    avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    function verif() {
    ...
    if (control_ok)
      return true;
    else
      return false;
    }
    Le fait que le onsubmit renvoie false bloque l'envoi du <form>.

    A cet instant là, la value de l'input devrait avoie été correctement prise en compte, ce qui devrait résoudre ton problème ...

    A+

  3. #3
    Nouveau Candidat au Club
    Inscrit en
    Juin 2010
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Dans le cas que tu cites, cela fonctionne correctement mais pas dans le cas que j'expose.

    Je vais essayer d'être plus claire :
    J'ai un formulaire d'identification d'une personne (nom, prénom, adresse, ..).
    Lorsque je saisis le code postal, j'appelle une fonction JavaScript qui me permet de vérifier que le code postal est composé de 5 chiffres pour pouvoir appeler une fonction qui recherche les communes associées à ce code postal (pour remplir une combo box).

    Je précise que je ne peux pas modifier ce fonctionnement. Ce n'est pas moi qui décide.

  4. #4
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Citation Envoyé par brandes Voir le message
    Je précise que je ne peux pas modifier ce fonctionnement. Ce n'est pas moi qui décide.
    OK

    Mais tu peux nous montrer le code concerné (HTML généré + JavaScript) par contre

    A+

  5. #5
    Nouveau Candidat au Club
    Inscrit en
    Juin 2010
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Le généré ressemble à peu près à ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    function validerCodePostal(e, a, m) {		
    	// On récupère la valeur du code postal
    	var txtCodePostal =  e;	
    	var chaine = trimAll(txtCodePostal.value);
    	// Création de l'expression régulière
    	var regEx = new RegExp("[0-9]{5}","g");
    	if (chaine.match(regEx)) {
    		// on lance l'action du listage des communes
    		listecommunes(e,a,m);
    	} else if (chaine != "") {
    		// dans ce cas le code postal semble incorrect
    		alert("erreur");		
    	}		
    }
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <input class="a_textEntry" id="Txt_CodePostal" style="width:50" type="text" name="Txt_CodePostal" maxLength="5" onBlur="validerCodePostal"/>

  6. #6
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Citation Envoyé par brandes Voir le message
    Le généré ressemble à peu près à ça
    A peu près pour un code, ça veut pas dire grand chose
    Soit c'est un copié/collé du vrai code, soit ce n'est pas le bon code

    Première évidence : tu ne passes pas à la fonction les arguments qu'elle attend (e, notamment, est indispensable).

    A+

  7. #7
    Nouveau Candidat au Club
    Inscrit en
    Juin 2010
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    J'utilise des fonctions propriétaires et donc qui ne te parleront pas.

    Le e est bien passé, je récupère le champ de saisie. C'est juste ce qu'il y a dedans que je ne vois pas.

  8. #8
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Citation Envoyé par brandes Voir le message
    J'utilise des fonctions propriétaires et donc qui ne te parleront pas.
    C'est pas du JavaScript ?

    Citation Envoyé par brandes Voir le message
    Le e est bien passé, je récupère le champ de saisie.
    Non il n'est pas passé dans ce code ci.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    onBlur="validerCodePostal"
    Pas possible de t'aider sur un code fictif ...

    +A+

  9. #9
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    onBlur="validerCodePostal(e,a,m)"
    à toi ensuite de remplacer e a et m par leurs valeurs souhaitées.

Discussions similaires

  1. Espace dans champs de saisie
    Par Hasa dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 17/01/2011, 17h35
  2. [débutant] Ordre des champs de saisie par la touche tab
    Par almisuifre dans le forum C++Builder
    Réponses: 10
    Dernier message: 03/03/2005, 19h45
  3. Rendre un champs de saisie enable
    Par sheira dans le forum ASP
    Réponses: 2
    Dernier message: 09/12/2004, 16h22
  4. Calcul dans des champs de saisie
    Par leeloo076 dans le forum ASP
    Réponses: 4
    Dernier message: 07/04/2004, 10h09
  5. tabulation sur champs de saisie
    Par xClyde dans le forum Flash
    Réponses: 2
    Dernier message: 25/09/2003, 16h49

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