2017-11-16 3 views
-3

//私はフィートの入力からメートルで結果を得ようとしています。私のフィートのメートルのコンバータの期待値を得ていません。 VanillaJS please、ありがとう

  <div id="inner-wrapper"> 
       <label for="feet-input">Enter feet 
       </label> 
       <input type="number" id="feet-input" placeholder="Feet"> 

       <label for="result">Result 
       </label> 
       <div id="result"></div> 

       <button id="calculate" onclick="calculate()">Calculate</button> 
       <button id="clear" onclick="clear()">Clear</button> 
      </div> 

//任意の数値に対して、私は答えとして0を得ます。

 var feetInput = document.getElementById("feet-input").value; 
     var result = document.getElementById("result");  
     var total; 

     function calculate(){ 
      total = feetInput * 0.3048; 
      result.innerHTML = total; 
      return total; 


     } 

      function clear(){ 
       feetInput.value = ""; 
       result.value = ""; 

      } 



    //For any number I type get 0 as result. 

任意の数字については、答えとして0を入力します。

答えて

1

あなたが関数呼び出しには常に最新の値を取得する必要があります一度あなたが持っている唯一の問題は、feet-inputから値がONLYであるということである

//var feetInput = document.getElementById("feet-input").value;//only executed once 
 
     var result = document.getElementById("result");  
 
     var total; 
 

 
     function calculate(){ 
 
     var feetInput = document.getElementById("feet-input").value; 
 
      total = feetInput * 0.3048; 
 
      result.innerHTML = total; 
 
      return total; 
 

 

 
     } 
 

 
      function clear(){ 
 
       feetInput.value = ""; 
 
       result.value = ""; 
 

 
      } 
 

 

 

 
    //For any number I type get 0 as result.
<div id="inner-wrapper"> 
 
       <label for="feet-input">Enter feet 
 
       </label> 
 
       <input type="number" id="feet-input" placeholder="Feet"> 
 

 
       <label for="result">Result 
 
       </label> 
 
       <div id="result"></div> 
 

 
       <button id="calculate" onclick="calculate()">Calculate</button> 
 
       <button id="clear" onclick="clear()">Clear</button> 
 
      </div>

+0

を私は計算内の()関数からそれを使用するときに、関数の外に「VaRのfeetInput」を宣言することによって、それがアクセスできるようにすることを考えました。 ありがとうございます。 – user8519043

+0

それが役に立ったら返事として記入してください –

0

次のようにあなたのvar feetInput = document.getElementById("feet-input").value;にのみ実行されるためページが読み込まれたときに読み込みます。 計算を行う前に、feet-inputの値を取得する必要があります。

だけですぐにfunction calculate(){

Codepen後の行にvar feetInput = document.getElementById("feet-input").value;を追加します。https://codepen.io/DeathCamel57/pen/xPPGrp?editors=0010

関連する問題