Problème de code tout bête - calcul et affichage conditionnel

chkeuz Messages postés 17 Date d'inscription jeudi 24 juillet 2008 Statut Membre Dernière intervention 18 janvier 2013 - 17 janv. 2013 à 23:47
chkeuz Messages postés 17 Date d'inscription jeudi 24 juillet 2008 Statut Membre Dernière intervention 18 janvier 2013 - 18 janv. 2013 à 10:53
Bonjour à tous.
Je reprends le code d'un ancien site pour une refonte intégrale.
C'est un site de diététique.
Sur une page, j'ai un form de calcul d'IMC tout bête, avec affichage conditionnel dans une div d'un "avis" sur l'indice IMC calculé (type: attention, vous êtes obèse...). Problème: tout a l'air ok, mais le texte sensé s'afficher, ne s'affiche pas !
La formule étant assez alambiquée, je ne voudrais pas me refader tout le bazar...Je ne suis pas développeur, mais designer moi...

Je vous décline le script:
<script language="JavaScript">

function Calcul() {
    var BMI=0;
    var reponse=0;
    var correct=true

    poids = parseFloat(document.calculF.poids.value);
    taille = parseFloat(document.calculF.taille.value);

    if  (poids > 300 || poids < 20)
        {
        correct=false;
        alert("Le POIDS doit être exprimé en kg.");
        }

    if ( taille > 260 || taille < 50)
        {
        correct=false;
        alert("La TAILLE doit être exprimée en centimètres.");
        }
    if (correct)
    {
        IMC=(poids/Math.pow((taille/100),2));
        reponse = Math.round(IMC*10)/10;
        document.calculF.resultat.value = reponse;
        document.jauge.width = reponse;

        if (reponse < 19) {
               texte = "Notre Avis :\nVotre poids se situe dans la zône de maigreur,\nmieux vaut éviter de perdre du poids !";
                document.jauge.width = reponse+50;
        }
         else if (reponse < 25.1) {
                texte = "Notre Avis :\nVotre poids se situe dans la fourchette de corpulence idéale.";
                document.jauge.width = reponse+130;
       }
         else if (reponse < 30.1) {
                texte = "Notre Avis :\nVotre poids se situe dans la zône de surpoids.\nSi vous vous sentez mal et que vous souhaitez perdre du poids, cet objectif est tout à fait justifié. En revanche, si vous n'êtes pas vraiment motivé pour maigrir, pas d'affolement, mais essayez plutôt de stabiliser votre poids.";
                document.jauge.width = reponse+250;
       }
         else if (reponse < 35.1) {
                        texte = "Notre Avis :\nVotre poids se situe dans la zône d\'obésité, avec une nette augmentation des risques pour votre santé : perdre du poids serait donc souhaitable, mais l'amincissement ne doit pas nécessairement être très important : quelques kilos perdus durablement sont préférables à une perte de poids importante, mais éphémère.";
                document.jauge.width = reponse+300;
        } else {
               texte = "Notre Avis :\nVotre poids se situe dans la zône d'obésité morbide, c'est-à-dire qu'elle correspond à la situation la plus "à risque".";
                document.jauge.width = reponse+320;
       }
        document.calculF.avis.value = texte;
        document.onglet.style.display='inline';
    }
}
</script>


Vous l'aurez compris, la div dans laquelle s'affiche le texte est la balise "Avis"...
Une solution, chers amis ?

Bien à vous,merci d'avance pour vos réponses !

2 réponses

sylvain64520 Messages postés 130 Date d'inscription lundi 11 janvier 2010 Statut Membre Dernière intervention 7 juin 2013
18 janv. 2013 à 10:51
Si avis est une div => big probleme. En effet, une div n'a pas de value mais plus un innerHTML
0
chkeuz Messages postés 17 Date d'inscription jeudi 24 juillet 2008 Statut Membre Dernière intervention 18 janvier 2013
18 janv. 2013 à 10:53
Merci pour ton éclairage, Sylvain.
Du coup, tu as une solution ? Moi, je sèche !
0
Rejoignez-nous