J'écris un convertisseur de température et n'arrive pas à comprendre ce qui ne va pas avec mon javascript. Je n'arrive même pas à l'alerter en "courant". Ma fonction était appelée conversion, mais je pensais que c'était peut-être un mot clé de js, donc je l'ai changé pour tempConvert. Le code est supposé convertir les températures entre elles.Mon JavaScript ne fonctionne pas dans mon convertisseur de température
Deux tests que j'utilise sont
32F = 0C
et
72F = 22.22222...C
Il fonctionne bien dans les messages rapides et alerte, maintenant je veux utiliser des boîtes d'entrée.
<!DOCTYPE html />
<html>
<head>
<script type="text/javascript">
function tempConvert(){
alert("running.");
var f = document.getElementById("fahrenheit").value; //Gets the value for farenheit.
var c = document.getElementById("celsius").value; //Gets the value for celsius
var tf = isNumber(f); //Test if the value of f is a number.
var tc = isNumber(c); //Test if the value of c is a number.
if (tf = true){
//if f is a number run this
c = (f-32)/1.8; //conversion from f to c
document.getElementById("celsius").value = c; //sets the value of the celsius input box to c.
alert(c);
} else if (tc = true){
// does the same as previous if statement, switching temperature types.
f = (c+32)*1.8;
document.getElementById("fahrenheit").value = f;
} else {
alert("One of your inputs are invalid.");
// alerts the user if f and c are not a number.
}
}
funcion isNumber(test){ //A custom function(method) used to test if f or c is a number
return !isNaN(parseFloat(test)) && isFinite(test); //copied from another article in stackoverflow (http://stackoverflow.com/questions/6449611/how-to-check-whether-a-value-is-a-number-in-javascript-or-jquery)
}
</script>
</head>
<body>
<input id="fahrenheit" placeholder="fahrenheit"></input> =
<input id="celsius" placeholder="celsius"></input>
<input type="button" value="convert" onclick="tempConvert()" />
</body>
</html>
Avez-vous des erreurs? Ou la fonction n'appelle même pas .. – Thangadurai
Erreur d'orthographe de fonction dans la ligne suivante: funcion isNumber (test); –
Désolé, le code n'était tout simplement pas en cours d'exécution. –