2011-12-16 4 views
0

이 자바 스크립트에 문제가 생겼습니다. 여기서 여기서 N 예자바 스크립트의 통화 변환기에 문제가 발생했습니다.

window.onload = initPage; 

var euro; 
var convert; 

function initPage() 
{ 
    document.getElementById("convertButton").onclick = calcAnswer(); 
    document.getElementById("conversionType").onchange = calcAnswer(); 
} 

function calcAnswer() 
{ 
    //alert(document.getElementById("conversionType").value); 

    var value1 = document.getElementById("amount").value; 
    var conversionType = document.getElementById("conversionType").value; 
    //alert(conversionType); 

    if(var value = document.getElementById("conversionType").value=="polish"); 
     document.getElementById("answer").value=(value1-32)/9*5; 
    else 
     document.getElementById("answer").value=value1*9/5+32; 
} 

인 HTML에게 이전 온도 변환기를 사용

<h1>Currency Converter</h1> 


    <form name="convert"> 

Choose which currency you would like to convert to the Euro: 
<select id="conversionType"> 
    <option value="polish">Polish Zloty</option> 
    <option value="ukraine">Ukraine Hryvnia</option> 
</select> 
</br> 
</br> 

<hr> 
     Amount:<input id="amount" type="text" /> 
<input id="convertButton" type="button" value="Convert->"/> 
     To: 
<input id="answer" type="text" name="answer" readonly="readonly"/> 


</form> 

메신저이고 havent 한 해당 가공 부 그러나 심지어 그 부품이 작동하지 바꿨다.

+1

나는 내 차에 문제가 있습니다. 도움. – smendola

답변

3

우선,이 두 줄은 잘못 님의

document.getElementById("convertButton").onclick = calcAnswer(); 
document.getElementById("conversionType").onchange = calcAnswer(); 

변경을 :

document.getElementById("convertButton").onclick = calcAnswer; 
document.getElementById("conversionType").onchange = calcAnswer; 

당신은, onclickonchange에 함수 참조를 할당하지 실제로 함수를 호출하고 할당 할 반환 값 그런 다음

이 같은 calcAnswerif 문을 수정 :

function calcAnswer() 
{ 
    var amount = document.getElementById("amount").value; 
    var conversionType = document.getElementById("conversionType").value; 
    var answerElement = document.getElementById("answer"); 
    //alert(conversionType); 

    if(conversionType == "polish") { 
     answerElement.value = (amount-32)/9*5; 
    } else { 
     answerElement.value = amount*9/5+32; 
    } 
} 
+0

감사합니다. 매우 도움이되었습니다. – user1085773

0

는 (괄호없이)

document.getElementById("convertButton").onclick = calcAnswer; 
document.getElementById("conversionType").onchange = calcAnswer; 

당신은 단지 기능을 참조 할 필요가

, 실행하지이어야한다 그것.

관련 문제