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 :

Regenerer balise input html


Sujet :

JavaScript

  1. #1
    Membre du Club
    Inscrit en
    Mars 2006
    Messages
    88
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 88
    Points : 62
    Points
    62
    Par défaut Regenerer balise input html
    Bonjour a tous,

    Mon dernier post ayant fait un flop je réecris en demandant differement.
    J'ai un probleme en javascript lorsque que je veux afficher le total dynamiquement de balises select dans un champ input.
    Mon probleme est que je ne peux pas modifier 2 fois le meme champs select car il garde toujours l'indice de depart.
    Ainsi, je me demandais si c'etait possible, a la fin de ma fonction javascript de regener cette balise html select ? Et comment ?

    Merci a tous.

  2. #2
    Membre averti Avatar de jmulans
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    397
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2006
    Messages : 397
    Points : 383
    Points
    383
    Par défaut
    met nous un peu de code, c'est un peu flou comme ça
    J'mangerais plus jamais de chili... OUH !!!! DU CHILI !!!!

  3. #3
    Membre averti Avatar de deY!
    Inscrit en
    Avril 2006
    Messages
    403
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Avril 2006
    Messages : 403
    Points : 414
    Points
    414
    Par défaut
    J'ai un probleme en javascript lorsque que je veux afficher le total dynamiquement de balises select dans un champ input.
    Mon probleme est que je ne peux pas modifier 2 fois le meme champs select car il garde toujours l'indice de depart.
    Je comprend pas ton probléme...

    Ainsi, je me demandais si c'etait possible, a la fin de ma fonction javascript de regener cette balise html select ? Et comment ?
    Oui.
    Cherche du coté de createElement, setAttribute, createTextNode et appendChild
    deY!

  4. #4
    Membre du Club
    Inscrit en
    Mars 2006
    Messages
    88
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 88
    Points : 62
    Points
    62
    Par défaut
    Citation Envoyé par jmulans
    met nous un peu de code, c'est un peu flou comme ça
    Voici mon code javascript

    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
     <script language="javascript">
     
     
     function AfficheTotalDay(champ1, champ2, ancienne) // champ1 :premiere partie du nom du select selectionné
    								//champ2:Deuxieme partir du nom du select selectionné
    								//ancienne:indice initial sur lequel est positionné le select avant de changer la valeur
     {
     // Creation du jour selectionné
    if (champ1==1){daytext="monday";}
    if (champ1==2){daytext="tuesday";}
    if (champ1==3){daytext="wednesday";} //On met dans daytext le nom du jour qu'on modifie
    if (champ1==4){daytext="thursday";}
    if (champ1==5){daytext="friday";}
    // Conversion en String et concatenation du jour et du numero pour obtenir le nom du champs input selectionné
     champ2.toString(10); 
     var jour=daytext.concat(champ2); 
     // Création, concatenation du champs input totalweek donc a droite et obtention de sa valeur initiale
      var week="totalweek".concat(champ2) 
     var weekvalue=parseFloat(document.myform.eval(week).value); 
     
     // Creation, concatenation du champs totalday en bas et obtention de sa valeur initiale
       var tot="total"; 
      var total=tot.concat(daytext); 
       var resultat=parseFloat(document.myform.eval(total).value);
     
      // Création du champs total, le total general et obtention de sa valeur initiale
        var totalall=parseFloat(document.myform.total.value); 
     
    // Obtention de la nouvelle valeur
     var nouvelle=parseFloat(document.myform.eval(jour).options[document.myform.eval(jour).selectedIndex].value); // Recoit la valeur selectionné nouvelle <-0,5
      if (ancienne<=nouvelle) // Si l'ancienne valeur est inferieur ou egale a la nouvelle
     {
     // On calcul la difference entre la nouvelle valeur est l'ancienne valeur
     var difference=nouvelle-ancienne;
     // On regarde si le total du jour sera superieur a 1 apres modification ou pas
     resultat=resultat+difference;
     if (resultat>1)
     {
     alert ("Be careful, the workload for a day can't exceed 1"); 
     }
     else
    {
     // Le totalday recoit la variable resultat
    document.myform.eval(total).value=resultat; 
    // On augmente le champs total 
    document.myform.total.value=totalall+difference;
    document.myform.eval(week).value=weekvalue+difference;
    }
     }
     else // Si l'ancienne est superieur a la nouvelle
     {
     var difference=ancienne-nouvelle; 
      resultat=resultat-difference; 
      document.myform.eval(total).value=resultat; 
      document.myform.total.value=totalall-difference; 
      document.myform.eval(week).value=weekvalue-difference; 
     }
     
    }
     
    </script>

  5. #5
    Membre du Club
    Inscrit en
    Mars 2006
    Messages
    88
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 88
    Points : 62
    Points
    62
    Par défaut
    Citation Envoyé par deY!
    Je comprend pas ton probléme...

    J'ai des champs select dans mon formulaire qui correspondent a des charges de travail que doivent remplir les employés, je voudrais en afficher le total dynamiquement, des qu'on change une valeur cela vient s'ajouter ou s'enlever au resultat.

    Le champ select est initialisé a 0. (il y a 5 valeurs 0,0.25,0.5,0.75,1)
    Mon probleme est que par exemple si l'employé selectionne la valeur 0.25, cela s'ajoute au total normalement.
    Si il trouve qu'il s'est trompé et que sa charge était de 0.75 et qu'il selectionne 0.75, cela va ajouter 0.25+0.75 car c'est dynamique et l'indice que j'appel dans ma fonction est toujours a 0...

    Peut etre ne devrais je pas faire passer la valeur initiale dans ma fonction ??...

  6. #6
    Membre averti Avatar de deY!
    Inscrit en
    Avril 2006
    Messages
    403
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Avril 2006
    Messages : 403
    Points : 414
    Points
    414
    Par défaut
    Sur l'evennement onChange de ton select.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <select onchange="javascript:document.forms['myform'].elements['myinput'].value = this.value">
    <option value="0">0</option>
    <option value="0.25">0.25</option>
    <option value="0.5">0.5</option>
    <option value="1">0</option>
    </select>
    deY!

  7. #7
    Membre du Club
    Inscrit en
    Mars 2006
    Messages
    88
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 88
    Points : 62
    Points
    62
    Par défaut
    En fait, je crois savoir d'ou vient mon erreur, et j'aurai voulut savoir s'il etait possible de recuperer l'element precedent le changement.

    Par exemple, l'indice etait a 0.25, et l'employé le monte a 0.75.
    Lors de mon onChange(), la valeur selectionné est 0.75, est il possible de recuperer la valeur 0.25 ?

    Parce que c'est la facon dont je recupere cette valeur qui me fausse ma fonction...

  8. #8
    Membre averti Avatar de deY!
    Inscrit en
    Avril 2006
    Messages
    403
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Avril 2006
    Messages : 403
    Points : 414
    Points
    414
    Par défaut
    Pas que je sache... de toute maniére la valeur précédente, c'était l'ancienne, donc tu la stocks et tu réutilises.
    deY!

Discussions similaires

  1. balise input dans DIV
    Par lapartdombre dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 06/02/2006, 17h04
  2. [CSS] personnaliser les boutons des balises INPUT
    Par Leviathan_72 dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 08/11/2005, 15h22
  3. type "file" pour la balise input
    Par fa_say dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 23/09/2005, 15h13
  4. [DEBUTANT] CSS balise input
    Par nine dans le forum Mise en page CSS
    Réponses: 6
    Dernier message: 23/03/2005, 13h40
  5. police dans balise input et select
    Par le_ben dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 11/03/2005, 14h54

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