[Javascript]Up input à partir d'autres inputs
Fermé
jbulysse01
Messages postés
4
Date d'inscription
vendredi 9 mai 2008
Statut
Membre
Dernière intervention
9 mai 2008
-
9 mai 2008 à 11:32
Burnog Messages postés 1 Date d'inscription vendredi 20 juin 2008 Statut Membre Dernière intervention 20 juin 2008 - 20 juin 2008 à 15:50
Burnog Messages postés 1 Date d'inscription vendredi 20 juin 2008 Statut Membre Dernière intervention 20 juin 2008 - 20 juin 2008 à 15:50
A voir également:
- [Javascript]Up input à partir d'autres inputs
- Creer un groupe whatsapp a partir d'un autre groupe - Guide
- No video input ✓ - Forum Matériel & Système
- Input not supported - Forum Ecran
- Comment faire une recherche à partir d'une photo - Guide
- Annuaire portable gratuit a partir d'un nom - Forum Réseaux sociaux
6 réponses
PhP
Messages postés
1770
Date d'inscription
lundi 11 décembre 2000
Statut
Membre
Dernière intervention
23 décembre 2009
606
9 mai 2008 à 12:23
9 mai 2008 à 12:23
bjr
submit() , eval() hum c'est bien compliqué pour une simple addition
Essai ceci
PhP
Il y a 10 types de personnes dans le monde : ceux qui comprennent le binaire et les autres ...
submit() , eval() hum c'est bien compliqué pour une simple addition
Essai ceci
<html> <head> <script language="JavaScript"> <!-- function calcul_total() { var eltA = document.getElementById("valeurA"); var eltB = document.getElementById("valeurB"); var eltTotal = document.getElementById("total"); var valA = parseFloat(eltA.value) if (isNaN(valA)) valA = 0; var valB = parseFloat(eltB.value); if (isNaN(valB)) valB = 0; eltTotal.value = valA+valB; } //--> </script> </head> <body> <form action="" method="post"> Valeur A <input type="text" id="valeurA" name="valeurA" value="0" onKeyDown="calcul_total();"><br /> Valeur B <input type="text" id="valeurB" name="valeurB" value="1" onKeyDown="calcul_total();"><br /> Total A+B <input type="text" id="total" name="total" value="" disabled="true"> </form> </body> </html>--
PhP
Il y a 10 types de personnes dans le monde : ceux qui comprennent le binaire et les autres ...
jbulysse01
Messages postés
4
Date d'inscription
vendredi 9 mai 2008
Statut
Membre
Dernière intervention
9 mai 2008
9 mai 2008 à 15:25
9 mai 2008 à 15:25
Bonjour,
Merci pour votre réponse, entre-temps, j'avais commencé à décoincer l'affaire mais voici le problème que j'ai :
au lieu d'ajouter mes valeurs, elles sont concaténées dans l'input dans lequel je souhaite voir figurer le résultat du calcul comme si c'était une chaine:
<script type="text/javascript">
function calcul(num,nb)
{
if(parseFloat( document.getElementById("a"+nb).value)==("NaN")) {document.getElementById("a"+nb).value=0;}
document.getElementById("t"+num).value= parseFloat( document.getElementById("t"+num).value + parseFloat( document.getElementById("a"+nb).value));
}
</script>
while (...) {
$i++;
<td><input type="text" name="<? echo "a".$i?>" id="<?echo "a".$i?>" onchange='calcul(1,<?echo $i?>);'></td>
}
<td><input type="text" name="total_1" id="t1" size="6"></td>
Merci pour votre réponse, entre-temps, j'avais commencé à décoincer l'affaire mais voici le problème que j'ai :
au lieu d'ajouter mes valeurs, elles sont concaténées dans l'input dans lequel je souhaite voir figurer le résultat du calcul comme si c'était une chaine:
<script type="text/javascript">
function calcul(num,nb)
{
if(parseFloat( document.getElementById("a"+nb).value)==("NaN")) {document.getElementById("a"+nb).value=0;}
document.getElementById("t"+num).value= parseFloat( document.getElementById("t"+num).value + parseFloat( document.getElementById("a"+nb).value));
}
</script>
while (...) {
$i++;
<td><input type="text" name="<? echo "a".$i?>" id="<?echo "a".$i?>" onchange='calcul(1,<?echo $i?>);'></td>
}
<td><input type="text" name="total_1" id="t1" size="6"></td>
PhP
Messages postés
1770
Date d'inscription
lundi 11 décembre 2000
Statut
Membre
Dernière intervention
23 décembre 2009
606
9 mai 2008 à 15:30
9 mai 2008 à 15:30
Remplace
document.getElementById("t"+num).value= parseFloat( document.getElementById("t"+num).value + parseFloat( document.getElementById("a"+nb).value));
par
document.getElementById("t"+num).value= parseFloat( document.getElementById("t"+num).value)+ parseFloat( document.getElementById("a"+nb).value);
subtil les parenthèses mais ca devrait marcher
document.getElementById("t"+num).value= parseFloat( document.getElementById("t"+num).value + parseFloat( document.getElementById("a"+nb).value));
par
document.getElementById("t"+num).value= parseFloat( document.getElementById("t"+num).value)+ parseFloat( document.getElementById("a"+nb).value);
subtil les parenthèses mais ca devrait marcher
jbulysse01
Messages postés
4
Date d'inscription
vendredi 9 mai 2008
Statut
Membre
Dernière intervention
9 mai 2008
9 mai 2008 à 15:57
9 mai 2008 à 15:57
Merci,
Mais j'ai toujours un pb, au lieu d'avoir le résultat de la somme qui s'affiche dans l'input j'ai ce cher "NaN", ce qui me paraît fou vu le blindage que j'ai rajouté (clairement, je ne vois pas pourquoi il me sort cette valeur) :
<script type="text/javascript">
function calcul(nb)
{
if(parseFloat( document.getElementById("a"+nb).value)==("NaN"))
{document.getElementById("a"+nb).value=0;}
if(parseFloat( document.getElementById("t1").value)==("NaN"))
{document.getElementById("t1").value=0;}
if(parseFloat( document.getElementById("t1").value)==(""))
{document.getElementById("t1").value=0;}
document.getElementById("t1").value= parseFloat(parseFloat(document.getElementById("t1").value)+ parseFloat( document.getElementById("a"+nb).value));}
</script>
Mais j'ai toujours un pb, au lieu d'avoir le résultat de la somme qui s'affiche dans l'input j'ai ce cher "NaN", ce qui me paraît fou vu le blindage que j'ai rajouté (clairement, je ne vois pas pourquoi il me sort cette valeur) :
<script type="text/javascript">
function calcul(nb)
{
if(parseFloat( document.getElementById("a"+nb).value)==("NaN"))
{document.getElementById("a"+nb).value=0;}
if(parseFloat( document.getElementById("t1").value)==("NaN"))
{document.getElementById("t1").value=0;}
if(parseFloat( document.getElementById("t1").value)==(""))
{document.getElementById("t1").value=0;}
document.getElementById("t1").value= parseFloat(parseFloat(document.getElementById("t1").value)+ parseFloat( document.getElementById("a"+nb).value));}
</script>
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
PhP
Messages postés
1770
Date d'inscription
lundi 11 décembre 2000
Statut
Membre
Dernière intervention
23 décembre 2009
606
9 mai 2008 à 16:09
9 mai 2008 à 16:09
ben essai comme j'ai fait
function calcul(nb)
{
var valNb =parseFloat(document.getElementById("a"+nb).value);
if (isNaN(valNb)) valNb = 0;
var valT1 =parseFloat(document.getElementById("t1").value);
if (isNaN(valT1)) valT1 = 0;
document.getElementById("t1").value= valT1+valNb;
}
function calcul(nb)
{
var valNb =parseFloat(document.getElementById("a"+nb).value);
if (isNaN(valNb)) valNb = 0;
var valT1 =parseFloat(document.getElementById("t1").value);
if (isNaN(valT1)) valT1 = 0;
document.getElementById("t1").value= valT1+valNb;
}
jbulysse01
Messages postés
4
Date d'inscription
vendredi 9 mai 2008
Statut
Membre
Dernière intervention
9 mai 2008
9 mai 2008 à 16:21
9 mai 2008 à 16:21
That's fine :)
Merci, pb résolu!
Merci, pb résolu!
20 juin 2008 à 15:50
J'avais tellement envie de te remercier que je me suis même inscrit sur CCC :-) !!!
Bravo et merci encore Php.
Ci dessous une copie du javascript que j'ai modifié pour moi :
function sumIt_1()
{
var eltA = document.getElementById("quantite_1");
var eltB = document.getElementById("puht_1");
var eltC = document.getElementById("remise_1");
var eltTotal = document.getElementById("totalht_1");
var valA = parseFloat(eltA.value)
if (isNaN(valA)) valA = 0;
var valB = parseFloat(eltB.value);
if (isNaN(valB)) valB = 0;
var valC = parseFloat(eltC.value);
if (isNaN(valC)) valC = 0;
eltTotal.value = (valA*valB)-((valA*valB)*(valC/100));
}