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 :

Fonction sur onBlur()


Sujet :

JavaScript

  1. #1
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2007
    Messages
    340
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Transports

    Informations forums :
    Inscription : Février 2007
    Messages : 340
    Points : 350
    Points
    350
    Par défaut Fonction sur onBlur()
    Bonjour à tous !

    Au chargement de ma page web, j'applique un onfocus et un onblur sur tous mes input pour qu'il soit bleuté lors du focus.

    Ensuite j'ai un function sur mon onload qui applique des paramètres sur certains input.

    Voila le problème, au chargement de la page, je fais ceci pour tous les input :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    mesinput.onblur = function()
    {
      this.className='';
    }
    Ensuite je prends un de mes input et je fais cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    moninput.onblur = function()
    {
      monaction();
    }
    Le problème c'est que je voudrais ajouter monaction(); au onblur qui est déjà défini. je souhaiterai ce résultat :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    moninput.onblur = function()
    {
      this.className='';
      monaction();
    }
    Tout en sachant que je ne peux pas coder directement this.className=''; dans mon constructeur par contre, je peux modifier mon constructeur pour qu'il prenne en compte l'ancien onblur et l'ajoute au nouveau mais je ne sais pas le faire.

    Pour schématiser, je voudrais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    moninput.onblur = ancienonblur() + nouveauonblur();
    bien entendu, c'est pas aussi simple.


    Merci de votre aide !!

  2. #2
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2007
    Messages
    340
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Transports

    Informations forums :
    Inscription : Février 2007
    Messages : 340
    Points : 350
    Points
    350
    Par défaut
    J'ai trouvé la solution qui est assez simple :

    je commence par placer mes actions spéciales sur certains inputs :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    moninput.onblur = function()
    {
      actionspeciale();
      ....
      tada();
    }
    ensuite je parcours tous mes inputs pour rajouter le bleuté et le onblur pour qu'ils redeviennent normaux :
    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
     
     
    if(moninput.onblur)
    {
      //J'ai déjà un onblur donc je surcharge le input et copie la fonction dans onoldblur
      moninput.onoldblur = moninput.onblur;
      //Ensuite je redéfinie le onblur et appel à l'intérieur le onoldblur
      moninput.onblur = function()
      {
        this.onoldblur();
        this.className='';
      }
    }
    else
    {
      //bien entendu, il faut aussi traiter le cas ou il n'y avait pas de onblur
      moninput.onblur = function()
      {
        this.className='';
      }
    }

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 01/10/2005, 16h58
  2. [C#] MDI Execution fonction sur fille a partir de la mere
    Par alex57 dans le forum Windows Forms
    Réponses: 2
    Dernier message: 27/07/2004, 10h00
  3. Réponses: 2
    Dernier message: 01/05/2004, 21h15
  4. [LG]Symbole # (dièse) et fonctions sur les chaînes
    Par James64 dans le forum Langage
    Réponses: 6
    Dernier message: 24/03/2004, 14h19

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