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 :

additions de zone texte


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Août 2010
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 16
    Par défaut additions de zone texte
    bonjour a tous,

    Je débute en javascript et je coince.
    (le code javascript n'est pas de moi, malheureusement)

    le code ci-dessous fonctionne parfaitement sur le premier tableau, mais je n'arrive pas a le faire tourner sur le deuxieme , 3, 4, etc...tableauxxxxxx

    Quelqu'un aurait-il une solution pour moi ???


    Merci d'avance.

    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
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
     
    <html>
    <head>
    <title>Document sans titre</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <script language="JavaScript">
    <!--
    function addition()
    {
    var sum = ''; num1 = 0; num2 = 0; num3 = 0; num4 = 0; num5 = 0;
    if (document.getElementById('num1').value != '')
    {
    num1 = eval(document.getElementById('num1').value);
    }
    if (document.getElementById('num2').value != '')
    {
    num2 = eval(document.getElementById('num2').value);
    }
    if (document.getElementById('num3').value != '')
    {
    num3 = eval(document.getElementById('num3').value);
    }
    if (document.getElementById('num4').value != '')
    {
    num4 = eval(document.getElementById('num4').value);
    }
    if (document.getElementById('num5').value != '')
    {
    num5 = eval(document.getElementById('num5').value);
    }
    sum = num1 - num2 - num3 - num4 - num5
    document.getElementById('somme').value = eval(sum);
    }
    //-->
    </script>
    </head>
     
    <body>
     
    <form name="form1" method="post" action="">
     
    <table align="center" width="25%" border="0" cellspacing="0" cellpadding="0">
    <tr>
    <td><input type="text" name="num1" id="num1" onBlur="addition();"></td>
    </tr>
    <tr>
    <td><input type="text" name="num2" id="num2" onBlur="addition();"></td>
    </tr>
    <tr>
    <td><input type="text" name="num3" id="num3" onBlur="addition();"></td>
    </tr>
    <tr>
    <td><input type="text" name="num4" id="num4" onBlur="addition();"></td>
    </tr>
    <tr>
    <td><input type="text" name="num5" id="num5" onBlur="addition();"></td>
    </tr>
    <tr>
    <td><input type="text" name="somme" id="somme" onBlur="addition();"></td>
    </tr>
    </table>
    </form>
     
     
     
    <form name="form1" method="post" action="">
     
    <table align="center" width="25%" border="0" cellspacing="0" cellpadding="0">
    <tr>
    <td><input type="text" name="num1" id="num1" onBlur="addition();"></td>
    </tr>
    <tr>
    <td><input type="text" name="num2" id="num2" onBlur="addition();"></td>
    </tr>
    <tr>
    <td><input type="text" name="num3" id="num3" onBlur="addition();"></td>
    </tr>
    <tr>
    <td><input type="text" name="num4" id="num4" onBlur="addition();"></td>
    </tr>
    <tr>
    <td><input type="text" name="num5" id="num5" onBlur="addition();"></td>
    </tr>
    <tr>
    <td><input type="text" name="somme" id="somme" onBlur="addition();"></td>
    </tr>
    </table>
    </form>
     
    </body>
    </html>

  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 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    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 659
    Billets dans le blog
    1
    Par défaut
    eval ??? pourquoi faire ...

    parseInt(), parseFloat() ou juste *1 ...
    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
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Par défaut
    Bonjour,

    Tu as deux formulaires dont chaque élément de premier a un copie dans le deuxième avec le même id. Un id doit être unique dans un document.

    A+.

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Août 2010
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 16
    Par défaut
    Citation Envoyé par andry.aime Voir le message
    Bonjour,

    Tu as deux formulaires dont chaque élément de premier a un copie dans le deuxième avec le même id. Un id doit être unique dans un document.

    A+.
    Je commence a comprendre, merci

    Quel peut être ma solution pour que calcul se fasse, sur environ 200 tableaux, sans a avoir à créer 200 scripts !!!!!

    Merci

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Août 2010
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 16
    Par défaut
    Citation Envoyé par SpaceFrog Voir le message
    eval ??? pourquoi faire ...

    parseInt(), parseFloat() ou juste *1 ...

    Bonjour,

    je viens de tester les civers propositions, malheureusement cela ne changent pas le probléme initial, qui est :
    le script fonctionne sur le premeir tableau, mais pas sur les autres.

    Merci de votre premiere reponse

  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 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    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 659
    Billets dans le blog
    1
    Par défaut
    oui il y a comme le dit andry un souci d'id ...
    id = identifiant => unique sur la page
    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 chevronné
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    207
    Détails du profil
    Informations personnelles :
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : Novembre 2010
    Messages : 207
    Par défaut
    J'adhères à la remarque de andry.aime
    Mais sinon ceci fonctionne :
    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
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
     
    <html>
    <head>
    <title>Document sans titre</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <script language="JavaScript">
    <!--
    function addition(IdForm)
    {
    var sum = ''; num1 = 0; num2 = 0; num3 = 0; num4 = 0; num5 = 0;
    if (document.forms[IdForm].elements[0].value != '')
    {
    num1 = eval(document.forms[IdForm].elements[0].value);
    }
    if (document.forms[IdForm].elements[1].value != '')
    {
    num2 = eval(document.forms[IdForm].elements[1].value);
    }
    if (document.forms[IdForm].elements[2].value != '')
    {
    num3 = eval(document.forms[IdForm].elements[2].value);
    }
    if (document.forms[IdForm].elements[3].value != '')
    {
    num4 = eval(document.forms[IdForm].elements[3].value);
    }
    if (document.forms[IdForm].elements[4].value != '')
    {
    num5 = eval(document.forms[IdForm].elements[4].value);
    }
    sum = num1 - num2 - num3 - num4 - num5;
    document.forms[IdForm].elements[5].value = eval(sum);
    }
    //-->
    </script>
    </head>
     
    <body>
     
    <form name="form1" method="post" action="">
     
    <table align="center" width="25%" border="0" cellspacing="0" cellpadding="0">
    <tr>
    <td><input type="text" name="num1" id="num1" onBlur="addition('form1');"></td>
    </tr>
    <tr>
    <td><input type="text" name="num2" id="num2" onBlur="addition('form1');"></td>
    </tr>
    <tr>
    <td><input type="text" name="num3" id="num3" onBlur="addition('form1');"></td>
    </tr>
    <tr>
    <td><input type="text" name="num4" id="num4" onBlur="addition('form1');"></td>
    </tr>
    <tr>
    <td><input type="text" name="num5" id="num5" onBlur="addition('form1');"></td>
    </tr>
    <tr>
    <td><input type="text" name="somme" id="somme" onBlur="addition('form1');"></td>
    </tr>
    </table>
    </form>
     
     
     
    <form name="form2" method="post" action="">
     
    <table align="center" width="25%" border="0" cellspacing="0" cellpadding="0">
    <tr>
    <td><input type="text" name="num1" id="num1" onBlur="addition('form2');"></td>
    </tr>
    <tr>
    <td><input type="text" name="num2" id="num2" onBlur="addition('form2');"></td>
    </tr>
    <tr>
    <td><input type="text" name="num3" id="num3" onBlur="addition('form2');"></td>
    </tr>
    <tr>
    <td><input type="text" name="num4" id="num4" onBlur="addition('form2');"></td>
    </tr>
    <tr>
    <td><input type="text" name="num5" id="num5" onBlur="addition('form2');"></td>
    </tr>
    <tr>
    <td><input type="text" name="somme" id="somme" onBlur="addition('form2');"></td>
    </tr>
    </table>
    </form>
     
    </body>
    </html>

  8. #8
    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 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    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 659
    Billets dans le blog
    1
    Par défaut
    "fonctionne" ...
    utiliser eval pour ça est une hérésie ...
    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 !

  9. #9
    Membre chevronné
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    207
    Détails du profil
    Informations personnelles :
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : Novembre 2010
    Messages : 207
    Par défaut
    Oui c'est sur parseInt() serait plus adapté au problème, d'ailleurs une fonction qui s'appelle addition et qui fait num1 -... -.... c'est louche aussi.

Discussions similaires

  1. Addition de zones de texte dans formulaire
    Par obel38 dans le forum Access
    Réponses: 5
    Dernier message: 06/04/2015, 20h55
  2. additions de zone texte
    Par toffou dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 16/11/2010, 12h54
  3. addition de nombre stocké dans des zones texte
    Par jejeman dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 04/07/2007, 12h11
  4. Affichage Données avec Espace ds Zone Texte
    Par dai.kaioh dans le forum ASP
    Réponses: 2
    Dernier message: 22/02/2005, 16h43
  5. zone texte limitée
    Par virtuadrack dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 28/12/2004, 15h36

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