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 :

Verrouillage de tous les champs d'une page


Sujet :

JavaScript

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 171
    Points : 70
    Points
    70
    Par défaut Verrouillage de tous les champs d'une page
    Bonjour,

    Je suis en train de mettre en place un code qui rend inactif tous les champs d'un formulaire lors de la consultation afin de proteger les données.
    Un bouton 'unlocking' permet de verrouiller/deverrouiller tous les champs en meme temps.

    Le probleme c'est que le verrouillage ne fonctionne pas sur tous les champs et je n'arrive pas a savoir pourquoi...

    Voici le code de la page principale :
    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
    35
    36
    <HTML>
    	<HEAD>
                    <title>Stock</title>
    		<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">
                    <style type="text/css">
                    <!-- @IMPORT URL(xxx/form_serre.css);
                    -->
                    </style>
    	</HEAD>
    <SCRIPT LANGUAGE="JavaScript1.2" SRC="/xxx/scripts/beosv2.js"></SCRIPT>
    <SCRIPT language="javascript" src="/xxx/scripts/serre.js"></script>
    <SCRIPT language="javascript" src="/xxx/scripts/verificateur.js"></script>
    <SCRIPT language="javascript">
     
    var verrou=true;
     
    function on_load()
    {
      add_disabled(document.forms[0].code_ext);
      add_disabled(document.forms[0].nb_ini);
    }
     
    ... autres fonctions javascript...
    </script>
     
    <body onLoad="on_load();test_nb_ini();">
    <center>
    <form name='stock_modif' action='stock_fiche2.cgi' method='post' enctype='multipart/form-data'>
     
    <INPUT TYPE="button" NAME="unlocking" VALUE="unlocking" ONCLICK="verrou = !verrou;enable_all(verrou);">
    ...
    Code ext :  : <INPUT TYPE="text" NAME="code_ext"  SIZE=40 MAXLENGTH=100>
    Initial  : <INPUT TYPE="text" NAME="nb_ini" VALUE="100" SIZE=10 MAXLENGTH=100>
    <br><INPUT TYPE="text" NAME="code_ext2" VALUE="100" SIZE=10 MAXLENGTH=100>
     
    ...
    La fonction add_disabled et enable_all se trouvent dans le fichier serre.js et ont le code suivant :
    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
    var disabled_elem = new Array();
     
    function add_disabled(elem)
    {
         elem.disabled=true;
         disabled_elem.push(elem);
    }
     
    function enable_all( test)
    {
        for (i=0; i<disabled_elem.length; i++)
        {
             disabled_elem[i].disabled=test;
        }
    }
    Dans la fonction add_disabled, j'ai essayé de faire un alert(elem.name) et sur les champs qui ne fonctionne pas, ca affiche 'undefined' au lieu du nom du champ. Dans le code ci dessus, ca fonctionne sur le champ code_ext mais pas sur nb_ini. J'ai donc essayé de mettre un champ code_ext2, identique a celui de nb_ini, et le verrouillage/deverrouillage de code_ext2 fonctionne bien donc je ne comprend pas du tout...

    Est ce que quelquun peut me donner un coup de main.?

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 637
    Points : 66 661
    Points
    66 661
    Billets dans le blog
    1
    Par défaut
    test tu lui donne quelle valeur ?
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 171
    Points : 70
    Points
    70
    Par défaut
    Citation Envoyé par SpaceFrog
    test tu lui donne quelle valeur ?
    dans la fonction enable_all?
    C'est true ou false selon si on active ou si on desactive.

  4. #4
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    et si tu leur met aussi un id avec la meme valeur que leur name et ensuite :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    add_disabled(document.getElementById('nb_ini'));
    ?
    Alunissage : Procédé technique consistant à déposer des imbéciles sur un rêve enfantin.

    Cours | FAQ | Sources Javascript
    Cours | FAQ | Sources PHP
    Mes Articles

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 171
    Points : 70
    Points
    70
    Par défaut
    Citation Envoyé par siddh
    et si tu leur met aussi un id avec la meme valeur que leur name et ensuite :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    add_disabled(document.getElementById('nb_ini'));
    ?
    Ca marche comme ca! Par contre, je ne comprend pas pourquoi pour certains champs je peux mettre directement le nom et sur d'autres je doit passer par l'id...
    Qu'est ce qui fait que je dois utiliser l'un ou l'autre?...

  6. #6
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 637
    Points : 66 661
    Points
    66 661
    Billets dans le blog
    1
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.forms[0].getElementsByTagName('input')
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 171
    Points : 70
    Points
    70
    Par défaut
    J'ai pas essayé la solution de spaceFrog, mais pourquoi je dois faire des choses differentes d'un champ a l autre?

  8. #8
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    ben soit tu fais tout comme avec sa solution, soit tout avec la mienne
    Alunissage : Procédé technique consistant à déposer des imbéciles sur un rêve enfantin.

    Cours | FAQ | Sources Javascript
    Cours | FAQ | Sources PHP
    Mes Articles

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 171
    Points : 70
    Points
    70
    Par défaut
    oui, cest sur
    mais ca ne me dis pas prquoi un coup ca marche d'une maniere et puis sur le champ suivant ca marche plus...

  10. #10
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    avec la manière de spacefrog ou la mienne ça doit marcher pour tous les champs
    Alunissage : Procédé technique consistant à déposer des imbéciles sur un rêve enfantin.

    Cours | FAQ | Sources Javascript
    Cours | FAQ | Sources PHP
    Mes Articles

  11. #11
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 637
    Points : 66 661
    Points
    66 661
    Billets dans le blog
    1
    Par défaut
    fais voir ta boucle ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

Discussions similaires

  1. [RegEx] Récupérer tous les liens d'une page
    Par micatmidog dans le forum Langage
    Réponses: 13
    Dernier message: 03/11/2006, 01h37
  2. affichage de TOUS les champs d'une table
    Par babulior dans le forum ASP
    Réponses: 6
    Dernier message: 28/06/2005, 15h33
  3. afficher tous les champs d'une table
    Par julio84 dans le forum ASP
    Réponses: 8
    Dernier message: 19/01/2005, 10h31
  4. Retrouver tous les champs d'une table
    Par tripper.dim dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 11/07/2004, 20h40
  5. Afficher tous les champs d'une table avec dbexpress et MySQL
    Par LHT dans le forum Bases de données
    Réponses: 2
    Dernier message: 25/06/2004, 17h11

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