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 :

Focus sur input


Sujet :

JavaScript

  1. #1
    Membre éclairé Avatar de Soulama
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2004
    Messages
    619
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2004
    Messages : 619
    Par défaut Focus sur input
    Bonjour,
    avec ma fonction checkRange je teste si un nombre est plus grand que 100, si cest le cas, je met le focus sur mon input field.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    function checkRange( edit )
    {
      var num = parseFloat( edit.value );
    	if ( num > 100 ) 
    	{
    	   alert( "Bla Bla" );
    	   edit.focus();
    	   edit.select();
    	   return false;
    	}
    }
    Malheureusement, si je jump avec un tab la fonction me montre lalert mais le fosus se met au prochain element !!!
    ya une methode de forcer le focus sur element x?
    Merci

  2. #2
    Expert confirmé
    Avatar de le_chomeur
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2006
    Messages
    3 653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 3 653
    Par défaut
    Malheureusement, si je jump avec un tab la fonction me montre lalert mais le fosus se met au prochain element !!!
    ya une methode de forcer le focus sur element x?
    en français correct ça donne quoi ?

  3. #3
    Membre éclairé Avatar de Soulama
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2004
    Messages
    619
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2004
    Messages : 619
    Par défaut
    @le_chomeur cette fois en francais
    lorsque je saute avec une tabulation dun element a un autre la fonction changeRange(nombre) teste si le nombre en parametre est plus grands que 100.
    Si c'est le cas(en theorie), je reste sur mon element(Metre le focus).

  4. #4
    Expert confirmé
    Avatar de le_chomeur
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2006
    Messages
    3 653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 3 653
    Par défaut
    qu'entends tu pas une tabulation ?

    une tabulation pour un informaticien est une indentation , ou l'appuis sur la touche tabulation ....

  5. #5
    Expert éminent

    Avatar de vermine
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    6 582
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 6 582
    Par défaut
    Bonjour,

    Nous n'avons peut-être pas assez d'information.
    Comment appelez-vous votre fonction checkRange et quand?

  6. #6
    Membre éclairé Avatar de Soulama
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2004
    Messages
    619
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2004
    Messages : 619
    Par défaut
    checkRange est appelé dans un Evenement onblur.
    Pour mon cas, une Tabulation veux dir la touche de tabulation pour sauter dun editField a un autre

  7. #7
    Expert confirmé
    Avatar de le_chomeur
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2006
    Messages
    3 653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 3 653
    Par défaut
    et edit ? correspond a this ou a un autre élément ?

  8. #8
    Membre éclairé Avatar de Soulama
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2004
    Messages
    619
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2004
    Messages : 619
    Par défaut
    oui

  9. #9
    Expert éminent

    Avatar de vermine
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    6 582
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 6 582
    Par défaut
    J'ai essayé ceci:

    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
     
     
    <form>
    	<input type="text" name="un" value="" onblur="checkRange(this);">
    	<input type="text" name="deux" value="le suivant">
    </form>
    <script>
     
    function checkRange( edit )
    {
      var num = parseFloat( edit.value );
    	if ( num > 100 ) 
    	{
    	   alert( "Bla Bla" );
    	   edit.focus();
    	   edit.select();
    	   return false;
    	}
    }
    </script>
    On voit bien que le tabulation fait mettre le focus sur le champ suivant avant l'alert. Mais après l'alert (donc quand on clique sur "Ok"), le focus repasse sur le champ un.

  10. #10
    Expert confirmé
    Avatar de le_chomeur
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2006
    Messages
    3 653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 3 653
    Par défaut
    ce qui est le comportement normal =>

    onblur se déclenche a la perte du focus ( donc l'appui sur la touche tabulation )

    donc l'erreur doit venir d'ailleurs puisque le code présenté par vermine fonctionne

  11. #11
    Expert éminent

    Avatar de vermine
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    6 582
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 6 582
    Par défaut
    Oui, c'est ce que j'ai voulu dire. C'est le chemninement logique de votre fonction ainsi présentée. Hé bien... Il nous faudra encore plus de renseignements.
    Peut-être plus d'information sur les deux champs en question.

  12. #12
    Membre éclairé Avatar de Soulama
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2004
    Messages
    619
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2004
    Messages : 619
    Par défaut
    @vermine
    jappele la fonction comme tu as fais. Le but est que le focus reste sur le champs un. Je veux forcer le focus pour rester sur le champs un si checkRange retourne false.

  13. #13
    Expert éminent

    Avatar de vermine
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    6 582
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 6 582
    Par défaut
    Et si vous copiez/collez mes quelques lignes sur un fichier vierge que vous appelez test.html et que vous le lancez et que vous faites votre tabulation du champ un vers le champ deux, avez-vous le même comportement que moi ou bien le focus reste sur le champ deux ? Le champ deux est-il magique et a-t-il un évènement qui lui dit "si je suis vide, qu'on me donne le focus!" ?

  14. #14
    Membre éclairé Avatar de Soulama
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2004
    Messages
    619
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2004
    Messages : 619
    Par défaut
    FYI:
    la solution que jai trouvé:
    mettre un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    setTimeout( fieldFocus , 100 );
    aprés la fenetre alert
    fieldFocus et un pointer sur la methode qui met le focus sur le champs un.

    Merci

  15. #15
    Membre éclairé Avatar de Soulama
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2004
    Messages
    619
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2004
    Messages : 619
    Par défaut
    @vermine
    ton code ne marche pas.
    Lorsque jecris 333 dans le chanps un et je change avec une tabulation vers le chapms deux, cest le chapms deux qui prends le focus est pas le champs un.

  16. #16
    Expert éminent

    Avatar de vermine
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    6 582
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 6 582
    Par défaut
    Je suis sous IE7, qui sait...

    Ha ben tant mieux si vous avez trouvé un contournement à votre problème.

    Bonne continuation.

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

Discussions similaires

  1. Attribution valeur et focus sur un autre input
    Par TLOH45 dans le forum jQuery
    Réponses: 16
    Dernier message: 30/11/2011, 11h49
  2. Focused sur un champ input
    Par dominos dans le forum jQuery
    Réponses: 2
    Dernier message: 28/02/2011, 11h02
  3. focus sur un input
    Par jadey dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 11/09/2009, 12h52
  4. impossible de faire un focus() sur un input
    Par paolo2002 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 22/04/2008, 20h02
  5. focus sur une input text
    Par mic79 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 05/01/2005, 18h06

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