2016-05-16 2 views
1

Jsを使用して簡単な通貨コンバータを作成したいと思います。使用可能な5つのコイン(USD、EUR、GPB、AUD、JPY)をリストにして作成したいと思います。Jsを使った通貨換算

function calculate() { 
 
    var amount = parseFloat(document.getElementById("amount").value); 
 
    var select = document.getElementById("select"); 
 
    var select1 = document.getElementById("select1"); 
 
    var result = document.getElementById("result"); 
 

 
    if (select.value === "USD") && (select1.value === "USD") { 
 
    result.value = (amount * 1); 
 
    } 
 
    if (select.value === "USD") && (select1.value === "EUR") { 
 
    result.value = (amount * 0.88); 
 
    } 
 
    if (select.value === "USD") && (select1.value === "AUD") { 
 
    result.value = (amount * 1.37); 
 
    } 
 
    if (select.value === "USD") && (select1.value === "GBP") { 
 
    result.value = (amount * 0.69); 
 
    } 
 
    if (select.value === "USD") && (select1.value === "JPY") { 
 
    result.value = (amount * 108.96); 
 
    } 
 
    if (select.value === "EUR") && (select1.value === "EUR") { 
 
    result.value = (amount * 1); 
 
    } 
 
    if (select.value === "EUR") && (select1.value === "USD") { 
 
    result.value = (amount * 1.13); 
 
    } 
 
    if (select.value === "EUR") && (select1.value === "AUD") { 
 
    result.value = (amount * 1.55); 
 
    } 
 
    if (select.value === "EUR") && (select1.value === "GBP") { 
 
    result.value = (amount * 0.79); 
 
    } 
 
    if (select.value === "EUR") && (select1.value === "JPY") { 
 
    result.value = (amount * 123.47); 
 
    } 
 
    if (select.value === "EUR") && (select1.value === "EUR") { 
 
    result.value = (amount * 1); 
 
    } 
 
    if (select.value === "EUR") && (select1.value === "USD") { 
 
    result.value = (amount * 1.13); 
 
    } 
 
    if (select.value === "EUR") && (select1.value === "AUD") { 
 
    result.value = (amount * 1.55); 
 
    } 
 
    if (select.value === "EUR") && (select1.value === "GBP") { 
 
    result.value = (amount * 0.79); 
 
    } 
 
    if (select.value === "EUR") && (select1.value === "JPY") { 
 
    result.value = (amount * 123.47); 
 
    } 
 
    if (select.value === "GPB") && (select1.value === "EUR") { 
 
    result.value = (amount * 1.27); 
 
    } 
 
    if (select.value === "GPB") && (select1.value === "USD") { 
 
    result.value = (amount * 1.44); 
 
    } 
 
    if (select.value === "GPB") && (select1.value === "AUD") { 
 
    result.value = (amount * 1.98); 
 
    } 
 
    if (select.value === "GPB") && (select1.value === "GBP") { 
 
    result.value = (amount * 1); 
 
    } 
 
    if (select.value === "GPB") && (select1.value === "JPY") { 
 
    result.value = (amount * 157.08); 
 
    } 
 
    if (select.value === "AUD") && (select1.value === "EUR") { 
 
    result.value = (amount * 0.64); 
 
    } 
 
    if (select.value === "AUD") && (select1.value === "USD") { 
 
    result.value = (amount * 0.73); 
 
    } 
 
    if (select.value === "AUD") && (select1.value === "AUD") { 
 
    result.value = (amount * 1); 
 
    } 
 
    if (select.value === "AUD") && (select1.value === "GBP") { 
 
    result.value = (amount * 0.51); 
 
    } 
 
    if (select.value === "AUD") && (select1.value === "JPY") { 
 
    result.value = (amount * 79.51); 
 
    } 
 
    if (select.value === "JPY") && (select1.value === "EUR") { 
 
    result.value = (amount * 0.0081); 
 
    } 
 
    if (select.value === "JPY") && (select1.value === "USD") { 
 
    result.value = (amount * 0.0092); 
 
    } 
 
    if (select.value === "JPY") && (select1.value === "AUD") { 
 
    result.value = (amount * 0.013); 
 
    } 
 
    if (select.value === "JPY") && (select1.value === "GBP") { 
 
    result.value = (amount * 0.0064); 
 
    } 
 
    if (select.value === "JPY") && (select1.value === "JPY") { 
 
    result.value = (amount * 1); 
 
    } 
 
}
<h1>Convert US Dollars to Euros </h1> 
 
<form> 
 
    <p> 
 
    <label for="amount">Amount:</label> 
 
    <input type="text" id="amount" value=""> 
 
    <select id="select"> 
 
     <option value="USD">USD </option> 
 
     <option value="EUR">EUR </option> 
 
     <option value="GPB">GBP </option> 
 
     <option value="AUD">AUD </option> 
 
     <option value="JPY">JPY </option> 
 
    </select> 
 
    <select id="select1"> 
 
     <option value="USD">USD </option> 
 
     <option value="EUR">EUR </option> 
 
     <option value="GPB">GBP </option> 
 
     <option value="AUD">AUD </option> 
 
     <option value="JPY">JPY </option> 
 
    </select> 
 
    <input type="text" id="result" value=""> 
 
    </p> 
 
    <p> 
 
    <input type="button" value="Calculate" onclick="calculate();"> 
 
    <input type="reset" value="Reset"> 
 
    </p> 
 
</form>

しかし、これまでのところ、それを:彼は変換し、第二のリストで、彼はresult.Hereは、私がこれまで行ったことあるように彼が何をしたいのコイン通貨選択する必要がありますしたいコインまったく動作しません...そして、なぜ私は理解できません...どうしたのですか?

+1

どうしたらうまくいかないのですか?あなたのコンソールに何かエラーがありますか? –

+0

「計算」ボタンを押しても何も起こりません... –

+0

コンソールをチェックする必要があります(WindowsではF12、MacではOpt + Cmd + I)。これらのエラーを読んで何が間違っているかを見ることができます。 –

答えて

2

する必要があります料金。

if (select.value === "USD" && select1.value === "USD") { 
    result.value = (amount * 1); 
} else if (select.value === "USD" && select1.value === "EUR") { 
    result.value = (amount * 0.88); 
} 

より良いアプローチは、すべての金利のオブジェクトを作成し、レートが単一ifステートメントを使用して存在チェックすることです。

var rates = { 
    USD : { 
     USD: 1, 
     EUR: 0.88, 
     AUD: 1.37, 
    }, 
    EUR : { 
     EUR : 1, 
     USD : 1.13, 
     AUD : 1.55, 
    } 
} 

if(rates[select.value] && rates[select.value][select1.value]){ 
    result.value = amount * rates[select.value][select1.value]; 
} 
5

if文は、&&記号の間で閉じるべきではありません。ですから、

if (select.value === "EUR") && (select1.value === "EUR") 

を持ってどこに問題が括弧付きですが、あなたのif文が一致するものが見つかるif else if 1ので、あなたが他をチェックする必要はありませんする必要があります

if (select.value === "EUR" && select1.value === "EUR") 
+0

ありがとうございました。それだけでした!あなたは素晴らしいです! –

+0

@AggelosSfakianosあなたのお手伝いをしてうれしいです。 – Brayniverse