accès aux groupes de discussion, consultation et publication d'articles, recherche de "newsgroups"...
membres, identifiez-vous
é-mail Mot de passe
nouveau ? mot de passe oublié ?
Chargement... Chargement en cours...

Groupes français belges canadiens suisses internationaux Nétiquette
Échangez opinions et commentaires dans les forums de discussion.

Calcul instantané

 [  Nouvelle Discussion Nouvelle discussion  |  Répondre au groupe Répondre au groupe  |  fr.comp.lang.javascript ] 

Retour : Accueil du site fr comp lang javascript   charte stats de ce groupe


  Sujet:   Calcul instantané  
 De: dam.courr...@gmail.com (DamDamDeo)
 Groupes: fr.comp.lang.javascript
 Organisation: http://groups.google.com
 Date: 09. May 2008, 02:51:07
Bonjour à tous,
je permets ce petit message, ceci afin de soliciter votre aide sur un
petit problème...

Voici mon formulaire (du moins une partie) :


[code]
<body>
<form name="form1" method="post" action=""><table width="389"
border="1">
 <table width="46%" border="0" cellspacing="2" cellpadding="0">
                  <tr>
                    <td width="29%">&nbsp;</td>
                    <td width="22%"><div
align="center"><strong>acteur</strong></div></td>
                    <td width="25%"><div
align="center"><strong>chanteur</strong></div></td>
                    <td width="24%">total</td>
    </tr>
                  <tr>
                    <td>Adultes</td>
                    <td>


                          <input name="ch_acteur_adultes" type="text"
id="ch_acteur_adultes" size="10" onchange="add()"/


>                      </td>


                    <td>
                      <input name="chanteur_adulte" type="text"
id="chanteur_adulte" size="10" onchange="add()"/>
</
td>
                    <td><input name="total_adultes" type="text"
id="total_adultes" size="10" style="border:solid 2px  #FF6600"
readonly="true"/></td>
                  </tr>
                  <tr>
                    <td>De 12 &agrave; 18 ans</td>
                    <td>
                      <input name="ch_acteur_18" type="text"
id="ch_acteur_18" size="10" onchange="add()"/>                    </
td>
                    <td>
                      <input name="chanteur_18" type="text"
id="chanteur_18" size="10" />                    </td>
                    <td><input name="total_18" type="text"
id="total_18" size="10" style="border:solid 2px  #FF6600"
readonly="true"/></td>
                  </tr>
                  <tr>
                    <td>Moins de 12 ans</td>
                    <td>
                        <input name="ch_acteur_12" type="text"
id="ch_acteur_12" size="10" onchange="add()"/>                    </
td>
                    <td>
                        <input name="chanteur_12" type="text"
id="chanteur_12" size="10" />                   </td>
                    <td>
                      <input name="total_12" type="text"
id="total_12"
size="10" style="border:solid 2px  #FF6600" readonly="true"/

>                   </td>


                  </tr>
                  <tr>
                    <td>total</td>
                    <td><input name="total_acteur" type="text"
id="total_acteur" size="10" style="border:solid 2px  #FF6600"
readonly="true"/></td>
                    <td><input name="total_chanteur" type="text"
id="total_chanteur" size="10" style="border:solid 2px  #FF6600"
readonly="true"/></td>
                    <td><input name="total" type="text" id="total"
size="10" style="border:solid 2px  #FF6600" readonly="true"/></td>
                  </tr>
                </table>

</form>


</body>
[code]


Le but de ce formulaire est de calculer le nb d'adhérents pour chaque
catégorie, et pour cela, j'utilise le petit script suivant :


[code]
<script type="text/javascript">
function purge(nbre) {
// conversion séparateur ',' en '.'
nbre = nbre.replace(',','.');
// recherche et remplacement de caractères non désirés
nbre = nbre.replace(/([^0-9 ^.]|\.{2,5}|\s)/g,'');
return nbre;


}


function add() {
var f = document.forms[0];
var tot = 0;
// pour chaque élément du formulaire
for(var i=0; i<f.length; i++) {
// si c'est un champ de texte et dont le nom commence par 'ch_'
if(f[i].type=='text' && f[i].name.indexOf('ch_')>=0) {
// correction du contenu du champ
f[i].value = purge(f[i].value);
// ajout de cette valeur à la variable 'tot'
tot += f[i].value*1;
// comme la valeur d'un champ est de type texte
// on l'a transformée en nombre (en le multipliant par 1)
// avant de faire l'addition

}
}


// insertion du résultat
f['total_acteur'].value = tot;

}


</script>

[/code]


Mon soucis est que ce script ne me permet pas de faire plusieurs
calculs dans un même formulaire.
Comment remédier à ce soucis qui commence à me hanter depuis
plusieurs
jours maintenant.


D'avance merci,


DDD


DateSujet  Auteur
01.01.
o 
Groups Explorer contact votre avis comment ça marche? rechercher un groupe suggérer un groupe abuse accueil du site   Imprimer cette page   Envoyer cette page à un(e) ami(e)