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 :

input type text vers type password


Sujet :

JavaScript

  1. #1
    Membre habitué Avatar de sihammaster
    Webmaster
    Inscrit en
    Mai 2009
    Messages
    256
    Détails du profil
    Informations professionnelles :
    Activité : Webmaster
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2009
    Messages : 256
    Points : 183
    Points
    183
    Par défaut input type text vers type password
    Bonjour,

    je voudrais afficher dans une partie d'authentification; Login et mot de passe, la possibilité de voir des textes grisés dans les zones à saisir et lorsque l'utilisateur clic sur la zone, le texte se cache, cette partie ça marche chez moi, le souci que j'ai, c'est l'apparaition de mot de passe en cours de saisi et ça c'est normal parce que le type de input est TEXT. j'ai essayé de le convertir en password par une fonction Javascript voila mon code:
    Le problème se situe au moment que j'utilise OnFocus deux fois dans la zone password mais j'avais besoin des deux événements, comment faire?
    Code html
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <form id="form2" action="authe.php" method="post">	
     
     <input type="text" onfocus="textepardefaut('prisedefocus')"  onblur="textepardefaut('pertedefocus')" value="Login" name="login" id="login">
     
    <input type="text"  value="Mot de passe" onblur="textepardefaut2('pertedefocus')" onfocus="replaceT(this)" onfocus="textepardefaut2('prisedefocus')"  name="password" id="password">
     
    </form>
    Code JS
    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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
     
     
    function textepardefaut(evenement){
    //ce code affiche les textes grisés 
    	if(evenement=="prisedefocus")
    	{
    		if(document.getElementById('login').value == "Login")
    		{
    			document.getElementById('login').style.color = "#fff";
    			document.getElementById('login').value = '';
    		}	}
    	if(evenement=="pertedefocus")
    	{
    	if(document.getElementById('login').value == "")
    		{
    			document.getElementById('login').value = 'Login';
    			document.getElementById('login').style.color = "#c0c0c0";
    		}
    		if(document.getElementById('login').value == "Login")
    		{
    			document.getElementById('login').style.color = "#c0c0c0";
    		}
    	}
    }
    --------------------------------------------------------------------
     
    function replaceT(obj){
    //ce code sert à convertir lors la saisie dans la zonde de texte, le texte vers password
    var newO=document.createElement('input');
    newO.setAttribute('type','password');
    newO.setAttribute('password',obj.getAttribute('password'));
    obj.parentNode.replaceChild(newO,obj);
    newO.focus();
    }
    Merci de m'aider.

  2. #2
    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
    j'avais besoin des deux événements
    Euh... non, pas de deux événements (puisque c'est le même ), juste de deux actions et tu te compliques inutilement les choses !
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    onfocus="replaceT(this);textepardefaut2('prisedefocus')"

  3. #3
    Membre habitué Avatar de sihammaster
    Webmaster
    Inscrit en
    Mai 2009
    Messages
    256
    Détails du profil
    Informations professionnelles :
    Activité : Webmaster
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2009
    Messages : 256
    Points : 183
    Points
    183
    Par défaut
    Merci infiniment Bovino, c'est très gentil de votre pars de me répondre, j'ai essayé votre proposition mais ça marche pas, ça marche lorsque je mis une seule fonction, pas les deux en même temps..

  4. #4
    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
    Arf... j'avais pas vu
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    obj.parentNode.replaceChild(newO,obj);
    Si tu remplaces ton input, c'est sûr que les événements liés au premier disparaissent en même temps que lui !

    Essaye en modifiant ta fonction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    function replaceT(obj){
    //ce code sert à convertir lors la saisie dans la zonde de texte, le texte vers password
    obj.type = 'password';
    }

  5. #5
    Membre habitué Avatar de sihammaster
    Webmaster
    Inscrit en
    Mai 2009
    Messages
    256
    Détails du profil
    Informations professionnelles :
    Activité : Webmaster
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2009
    Messages : 256
    Points : 183
    Points
    183
    Par défaut
    Oui ça marche, vous êtes génie merci infiniment.

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

Discussions similaires

  1. Convertir un champ de base de données de type texte vers type date temporairement?
    Par Limpasse Creative dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 10/12/2014, 18h16
  2. Changer un input type="text" en type="password" + le vider
    Par Mazike dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 03/01/2008, 14h25
  3. Réponses: 2
    Dernier message: 07/03/2007, 14h27
  4. Convertir Type Text En Type Number
    Par jam92400 dans le forum Access
    Réponses: 3
    Dernier message: 30/05/2006, 10h04
  5. Un input qui passe de type text à type password ?
    Par Michaël dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 28/06/2005, 11h33

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