2016-04-14 14 views
1

私はjavascriptがうまくいかないので、コードを実験して判断しました。私は値を減算する異なるイコライゼーションを持つ複数の条件を持つことを望みます。これは私のサンプルコードですが、機能しませんでした。最初の条件だけが機能しました。javascriptで条件が複数ある場合

var input = document.getElementById("amount"); 

var first = 30; 
var second = 50; 
var third = 60; 

input.addEventListener("keyup", function() { 

    if (input = first) { 
     document.getElementById('rebate').value = document.getElementById('amount').value - 2; 
    } 
    else if (input = second) { 
     document.getElementById('rebate').value = document.getElementById('amount').value - 2.50; 
    } 
    else if (input = third) { 
     document.getElementById('rebate').value = document.getElementById('amount').value - 3; 
    } 
}); 

function sum() { 
     var txtFirstNumberValue = document.getElementById('txt1').value; 
     var txtSecondNumberValue = document.getElementById('amount').value; 
     var result = parseInt(txtFirstNumberValue) + parseInt(txtSecondNumberValue); 
     if (!isNaN(result)) { 
      document.getElementById('total').value = result; 
     } 
    } 

あなたは私を助けることができればそれは素晴らしい男だろうhtmlの

<div class="form-group"> 
         <label for="amount">Amount</label> 
         <input type="text" id="txt1" onkeyup="sum();" value="5" hidden> 
         <input type="text" class="form-control " id="amount" name="amount" placeholder="00" required onkeyup="sum();"> 
        </div> 

<div class="row"> 
       <div class="col-xs-3"> 
        <div class="form-group"> 
         <label for="total">Total</label> 
         <input type="text" class="form-control" id="total" name="total" placeholder="00" required readonly > 
        </div> 
       </div> 
      </div> 


<div class="row"> 
       <div class="col-xs-3"> 
        <div class="form-group"> 
         <label for="total">With Rebate</label> 
         <input type="text" class="form-control" id="rebate" name="rebate" required readonly > 
        </div> 
       </div> 
      </div> 

。 ^^

+2

値の比較に '= 'を使用することはできません。値を割り当てるには '='を使います。 – MinusFour

+0

ああああ。でも、どうすればいい? – angel1108

+1

=の代わりに==を使用して値を比較します。 – Dynelight

答えて

1

=のすべてを==に置き換えてif文内に入れてください。

また、var input = document.getElementById("amount")は、値ではなく要素への参照のみを取得します。 https://jsfiddle.net/bbjpg9np/

  • "リベート28と" ユーザーの種類30、
  • :あなたここでは、input.value == firstを記述する必要が文など

    が働くことJSFiddleである場合におけるので

    ユーザが50をタイプすると、「リベートあり47.5」

  • ユーザが60をタイプすると、「With Rebate 57」
+0

私はすでにそれを変更しましたが、アン出力はありません。 – angel1108

+0

あなたのhtmlを提供し、私たちはあなたをより助けてくれるかもしれません – theblindprophet

+0

私はすでに更新しました... – angel1108

関連する問題