2017-10-06 5 views
0

私は現在、HTMLでJavaScriptを使用して数値入力を作成しています。そして、数値が入力されると、選択リストのオプションは数値を2倍するかどうかを示します。私はすべてを正しく行ったように感じますが、コードを実行して「はい」をダブルクリックすると、出力番号は入力番号になり、倍増しません。私はifのステートメントが間違っていると思っていますが、わかりません。私はJavaScriptを初めて使っています。フィードバックを感謝します。Javascript with HTML if文

HTML

<body> 
    <input id = 'number' name = '' value = '' class = ''> 
    <select id = 'double' name = ''> 
     <option value = 'Y'>YES</option> 
     <option value = 'N'>NO</option> 
    </select> 
    <button id = 'go' class = ''>GO</button> 
    <input id = 'result' name = '' value = '' class = ''> 
    <script src = 'js/javascript 03.js'></script> 
</body> 

はJavaScript

document.getElementById('go').onclick = function() { 
    var number = document.getElementById('number').value; 
    var double = document.getElementById('double').value; 
    number = parseFloat(number); 

    if (double == 'Y') { 
     number * 2; 
    }; 

    document.getElementById('result').value = number; 
}; 
+5

'数*は、2 '確かに、二重番号を行います...しかし、何の' = 'その行で、それはdoesnのないと何にも割り当てられません。 –

+2

変数 'number'を再割り当てする必要があります。' number = number * 2; ' – Titus

+0

@NiettheDarkAbsolですが、number = number * 2を代入すると、yesをdoubleにするという目的を破り、noを同じにします。それは毎回それを倍にします。 – Astonishing

答えて

1

number * 2;はどこにでも値を格納しません。

number *= 2; 
number = number * 2; 
+0

しかし、私がnumber = number * 2を割り当てると、yesを選択する目的を破る数字を同じに保つために二重といいえ。それは毎回それを倍にします – Astonishing

+0

いいえ、あなたがそれを倍増することを選択した場合にのみあなたはそれを行うので... – Salketer

0

あなたの質問にコメントで述べたように、値を評価しますちょうどnumber * 2をやって:あなたはここで2例1を使用する必要があります。しかし、その値は、あなたが独自の変数に戻ってそれを置く必要があるので、どこにも保存されていません。

number = number * 2;