Problème sur javascript

francesco1202 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention   -  
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   -

Bonjour à tous, je m'entraîne pour mon futur examen sur javascript, mais je suis bloquer sur un point. en gros, si une option est cocher elle doit faire un calcul spécifique. mais si l'autre option est cocher, elle fera un autre calcul spécifique. ce que je ne comprend pas c'est pourquoi je n'arrive à rien avoir en retour.

merci de votre futur aide.

Et merci à la personne qui ma aussi aidé hier ! 

<select id="typeCarrelage" onchange="afficherColle()">
        <fieldset>
            <legend>quelle est le type du carrelage ?
            </legend>

            <div>
                <input type="radio" id="mural" name="carrelage" value="mural" checked>
                <label for="radio">Mural</label>
            </div>

            <div>
                <input type="radio" id="sol" name="carrelage" value="sol">
                <label for="sol">Sol</label>
            </div>
        </fieldset>
    </select>
    <label class="aDroite">Quantité ciment-colle pour carreler la surface : <span id="QtColle">000 kg</span></label>
    
</body>
</html>
------------------------------------------------------------------------------------------

function afficherColle() {
  var largeurP = parseFloat(document.getElementById("largeurPiece").value);
  var longueurP = parseFloat(document.getElementById("longueurPiece").value);
  var mur = document.getElementById("mural").value;
  var sol = document.getElementById("sol").value;

  if (mur == true) {
    var calcul = longueurP * largeurP * 4;
  } else {
    var calcul = longueurP * largeurP * 2.5;
  }

  calcul = calcul.toFixed(0);

  document.getElementById("QtColle").innerHTML = calcul + " kg";
}

3 réponses

jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 

Bonjour

Ce n'est pas l'attribut value qu'il faut utiliser pour des radio ou des checkboxe mais la propriété checked


1
francesco1202 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
 
 <select id="typeCarrelage" onchange="afficherColle()">
        <fieldset>
            <legend>quelle est le type du carrelage ?
            </legend>

            <div>
                <input type="radio" id="mural" name="carrelage" checked="mural">
                <label for="radio">Mural</label>
            </div>

            <div>
                <input type="radio" id="sol" name="carrelage" checked="sol">
                <label for="sol">Sol</label>
            </div>
        </fieldset>
    </select>
    <label class="aDroite">Quantité ciment-colle pour carreler la surface : <span id="QtColle">000 kg</span></label>
    
</body>
</html>

comme ceci ? que ceci ne fonctionne toujours pas

0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 

Non c'est au niveau du JavaScript qu'il faut utiliser la propriété et pas dans le HTML...

1
francesco1202 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention   > jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention  
 

comme ceci?

<select id="typeCarrelage" onchange="afficherColle()">
        <fieldset>
            <legend>quelle est le type du carrelage ?
            </legend>

            <div>
                <input type="radio" id="mural" name="carrelage" value="mural">
                <label for="mural">Mural</label>
            </div>

            <div>
                <input type="radio" id="sol" name="carrelage" value="sol">
                <label for="sool">Sol</label>
            </div>
        </fieldset>
    </select>
    <label class="aDroite">Quantité ciment-colle pour carreler la surface : <span id="QtColle">000 kg</span></label>
    
</body>
</html>
-------------------------------------------
function afficherColle() {
  var largeurP = parseFloat(document.getElementById("largeurPiece").value);
  var longueurP = parseFloat(document.getElementById("longueurPiece").value);
  var mur = document.getElementById("mural").checked;

  if (mur.checked == true) {
    var calcul = longueurP * largeurP * 4;
    console.log(calcul);
  } else {
    var calcul = longueurP * largeurP * 2.5;
  }

  calcul = calcul.toFixed(0);

  document.getElementById("QtColle").innerHTML = calcul + " kg";
}
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752 > francesco1202 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
 

Tu as un checked en trop

var mur = document.getElementById("mural").checked;

  if (mur.checked =


Enlèves en un des deux celui que tu veux 

0
francesco1202 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
 

ca ne marche toujours pas. J'ai retiré un checked mais toujours rien ne se passe, des idées?

0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 

Faudrait :

1- regarder dans la console du navigateur si il n'y aurait pas des erreurs

2- nous montrer ton code complet

0