Probleme de virgule dans un formulaire de cal

Résolu/Fermé
abilify Messages postés 152 Date d'inscription mercredi 18 avril 2012 Statut Membre Dernière intervention 23 mai 2012 - 18 avril 2012 à 14:19
abilify Messages postés 152 Date d'inscription mercredi 18 avril 2012 Statut Membre Dernière intervention 23 mai 2012 - 18 avril 2012 à 20:40
Bonjour et merci pour vos eventuel reponse.Je suis debutant en programation, je fait un site sur les énergies renouvelables avec un formulaire de calcul de dimensionnement d'une installation.on rentre les chiffres dedans , on appuie sur un input de type submit et ça calcul, tout simple.
Le problème que je rencontre c est pour les nombre à virgule, je tape par exemple 8.2 et lorsque j envoi le calcul il se transforme en 8,2 et le code n'abouti pas j ai une bulle a la place qui me dit "valeur incorrect" et dans la console de chrome, rien a signaler.j' ai fait des recherche sur l'ami google et je n'ai pas trouver de réponse.Certain conseil d'utiliser replace(",",".") mais je ne doit pas savoir m'en servir car ca ne fonctionne pas.

j ai réalisé un petit code pour illustrer le problème.


<form id="formulaire">

<label for="test">essai</label><input type="number" name="number1" id="test" />

<label for="test2">essai</label><input type="number" name="number1" id="test2" />

<input type="submit" name="submit" id="submit" />

</form>

<script>

function probleme(){

var nombre1 = document.getElementById("test");

var nombre2 = document.getElementById("test2");

var formu = document.getElementById("formulaire");



var nombre11= parseFloat(nombre1.value);

var nombre22= parseFloat(nombre2.value);



var result = nombre11 * nombre22;



alert(result);}



formu.addEventListener("submit",function(e){

probleme();

e.preventDefault;

},true);

</script>



Quelqu un pourrai t - il m'aider????svp
merci a tous
j'ai essayer aussi :
var nombre11= parseFloat(nombre1.value.replace(",","."));

var nombre22= parseFloat(nombre2.value.replace(",","."));


mais rien a faire ça ne change rien que se soit sur chrome ou mozilia le problème persiste

alors sur les conseil d'un internaute j 'ai essayer ce code :
<script>

function probleme(){

var nombre1 = document.getElementById("test");

var nombre2 = document.getElementById("test2");

var formu = document.getElementById("formulaire");

var nombre11= nombre1.value != "" ? parseFloat(nombre1.value) : 0;

var nombre22= nombre2.value != "" ? parseFloat(nombre2.value) : 0;

var result = nombre11 * nombre22;

alert(result);

}

var formulaire = document.getElementById("formulaire");

formulaire.addEventListener("submit",function(e){

probleme();

e.preventDefault;

},true);

</script>


et ça ne fonctionne toujours pas!!!
merci de votre aide et désoler pour les fautes.

1 réponse

abilify Messages postés 152 Date d'inscription mercredi 18 avril 2012 Statut Membre Dernière intervention 23 mai 2012 6
18 avril 2012 à 20:31
c est ok j'ai la solution
je la publie si ça peu éviter a d'autre de galérer

Mais il y a un mais sa ne fonctionne pas sous chrome si quelqu un a une idee de compatibilite

<form id="formulaire">

<label for="test">essai</label><input type="number" name="number1" id="test" />

<label for="test2">essai</label><input type="number" name="number1" id="test2" /> 

<input type="submit" name="submit" id="submit" />

</form> 





<script>

function probleme(){

var nombre1 = document.getElementById("test");

var nombre2 = document.getElementById("test2");

var formu = document.getElementById("formulaire");



var nombre11= nombre1.value != "" ? parseFloat(nombre1.value.replace(",",".")) : 0;

var nombre22= nombre2.value != "" ? parseFloat(nombre2.value.replace(",",".")) : 0;



var result = nombre11 * nombre22;

alert(result);

}











var formulaire = document.getElementById("formulaire");



formulaire.addEventListener("submit",function(e){







probleme();







e.preventDefault;







},true);







</script>

0
abilify Messages postés 152 Date d'inscription mercredi 18 avril 2012 Statut Membre Dernière intervention 23 mai 2012 6
18 avril 2012 à 20:40
ou alors encore mieux et bcp plus simple, utiliser des input de type text
0