Modifier le texte de l'étiquette à l'aide de JQuery

Je veux les étiquettes à changer à chaque fois que l'utilisateur change de système Métrique au système Impérial.

Il détecte correctement le changement et stocke la valeur actuelle sélectionnée, pas dans le if, mais rien ne se passe.

Voici mon code JavaScript.

$(document).ready(function() 
{   
    $("select[name = unit]").change(function()
    {
        var selected = $("option:selected", this).text();

        if(selected == "Metric (cm)")
        {
            $("label[for = unit]").text("mm");
        }
        else if(selected == "Imperial (inches)")
        {
            $("label[for = unit]").text("in");  
        }
    });
})

Et mon html.

    <form name ="Calculator">

        Unit of Measurement: 

        <select name = "unit">

            <option value = "120904000">
                Metric (cm)
            </option>

            <option value = "4760000">
                Imperial (inches)
            </option>

        </select>

        <br>


        Root Diameter: <input type = "text" name = "root" autocomplete = "off">
        <label for = "unit"></label>
        <br>

        Width between bearings: <input type = "text" name = "bearings" autocomplete = "off">
        <label for = "unit"></label>
        <br>

        End Fixity: 
        <select name = "fixity">

            <option value = ".36">
            1
            </option>

            <option value = "1.0">
            2
            </option>

            <option value = "1.47">
            3
            </option>

            <option value = "2.23">
            4
            </option>

        </select>

        <br>

        Max Speed (RPM): <input type = "text" name = "speed" autocomplete = "off"><br>

        <a href = "#" class = "reset" onclick = "">Reset</a>
        <a href = "#" class = "calculate" onclick = "checkOp(); return(false);">Calculate</a>
        <a href = "#" class = "close" onclick = "">Exit</a>

    </form>
  • Poste le code HTML ainsi, il y a quelques correspondance de chaîne passe là-bas.
  • Je devine que vous n'avez pas vraiment avoir un attribut qui dit for = unit avec tout ce que l'espace ?
  • Lorsque je l'exécute, il ressemble à la modification de l'élément sélectionné n'est de modifier le texte de l'étiquette. voulez-vous afficher la valeur + le texte de l'étiquette? comme 120904000mm? ou 4760000in?
  • J'ai juste envie de l'affichage "mm" ou "en" en fonction de l'unité de mesure que l'utilisateur a choisi.
  • ensuite, ton code me semble bon. peut-être modifier votre question avec l'ensemble de votre code html et javascript au lieu de l'extrait?
InformationsquelleAutor Shaffanhoon | 2014-04-18