2017-04-23 71 views
-2

我必須這樣做,作爲一個assignement問題: http://i.imgur.com/ch761kR.png[/img]約長轉換器IM使

這裏是代碼(大喊答題節目環節的夢想帽給我的幫助大型)

function pvc(val){ 
 
     var input = document.getElementById("value").value; 
 
     var result = document.getElementById("result"); 
 

 
     if (val == 'inch') { 
 
     result.innerHTML = input/0.39370; 
 
     } else if (val == 'cm') { 
 
     result.innerHTML = input * 0.39370; 
 
     } else if (val == 'celc') { 
 
     result.innerHTML = * 9/5 + 32 
 
     } else if (val == 'fahr') { 
 
     result.innerHTML = (farenheit – 32) * 5/9 
 
     } 
 
    }
Valeur:<input type="text" id="value" name="valeur" value="0" > <p id="result">Resultat ici</p> 
 
    <button type="button" id="inchToCm" onclick="pvc('inch')">Pouces vers cm</button> 
 
    <button type="button" id="cmtoInch" onclick="pvc('cm')">CM vers pouces</button> 
 
    <button type="button"id="celciusToFarenheit" onclick="pvc('celc')">Celcius vers 
 
    Farenheit</button> 
 
     <button type="button" id="farenheitToCelcius" onclick="pvc('fahr')">Farenheit vers Celcius</button>

當我用網頁上的任何數字對它進行測試時,它什麼也不返回,我猜測返回結果有什麼問題。

+0

檢查控制檯是否有語法錯誤。 –

+0

你明白錯誤嗎?因爲我真的沒有..我一直在這一個小時lol – bourki

回答

1

的問題來自語法錯誤在你的代碼,首先這行:

result.innerHTML = * 9/5 +32 

你可能意味着在前面加上input,使其成爲:

result.innerHTML = input * 9/5 +32 

其次這行:

result.innerHTML = (farenheit – 32) * 5/9 

此行是錯誤的,原因有二:首先,運營商應該是破折號(-)不是不管它是什麼(我認爲這是一個下劃線_但它不是,我不知道是什麼它是 :) )。

其次farenheit變量沒有定義,所以你會得到參考錯誤,一個可能的修復將是使用input來代替。未來:您可以打開您的瀏覽器的開發工具,如果出現一些錯誤,您會在瀏覽器的控制檯中看到它,也可以使用瀏覽器的調試器功能來調試類似的問題。

最後但並非最不重要的是,即使通過某種「靜態類型檢查程序」(例如flow)或「linter」(例如eslint,jslint,jshint)執行腳本之前,也可以防止這些類型的錯誤。

1

這裏是固定的版本。你有幾個問題:

  • farenheit是不是一個有效的變量。更改爲輸入。
  • -也是不正確的unicode。 (這是一個很長的衝刺,並拋出一個例外)。
  • 您在result.innerHTML = * 9/5 + 32行上有一個流浪*。我假設你想通過9/5 + 32乘以輸入。

function pvc(val) { 
 
    var input = document.getElementById("value").value; 
 
    var result = document.getElementById("result"); 
 

 
    if (val == 'inch') { 
 
    result.innerHTML = input/0.39370; 
 
    } else if (val == 'cm') { 
 
    result.innerHTML = input * 0.39370; 
 
    } else if (val == 'celc') { 
 
    result.innerHTML = input * 9/5 + 32; 
 
    } else if (val == 'fahr') { 
 
    result.innerHTML = (input - 32) * 5/9; 
 
    } 
 
}
Valeur:<input type="text" id="value" name="valeur" value="0"> 
 
<p id="result">Resultat ici</p> 
 
<button type="button" id="inchToCm" onclick="pvc('inch')">Pouces vers cm</button> 
 
<button type="button" id="cmtoInch" onclick="pvc('cm')">CM vers pouces</button> 
 
<button type="button" id="celciusToFarenheit" onclick="pvc('celc')">Celcius vers 
 
    Farenheit</button> 
 
<button type="button" id="farenheitToCelcius" onclick="pvc('fahr')">Farenheit vers Celcius</button>

+0

非常感謝您的時間所有 – bourki

+0

'*'不是流浪,它需要在它前面的輸入。 – trincot

+0

@trincot是的,注意到並更新了答案。 – FrankerZ