Erro ao tentar calcular um IMC via JS

07/07/2017

0

Olá Pessoal,
Se alguém puder dar uma olha no meu código para ver o que pode estar havendo de errado, pois clico no botão para calcular e não aparece nada de resultado.

Fico muito grato se puderem me ajudar

Código do javascript
function calcularIMC(){
	
	var Peso = parsefloat(document.getElementById("peso").value);
	var Altura = parsefloat(document.getElementById("altura").value);
	Altura = Altura / 100;

	//realizar o cálculo
	var imc = Peso/(Altura*Altura);
	imc = imc.toFixed(2);
	alert("Seu IMC foi " + imc);
}

function Tempo(){
	horario = new Date();
	var hora = horario.getHours();
	var minuto = horario.getMinutes();
	var segundo = horario.getSeconds();

	if (hora < 10) {horario = "0" +hora};
	if (minuto < 10) {horario = "0" +minuto};
	if (segundo < 10) {horario = "0" +segundo};

	document.getElementById("lugar").innerHTML = hora+":"+minuto+":"+segundo;
	window.setInterval("Tempo()",1000);

}


Código HTML

<!DOCTYPE html>
<html>
<head>
	<title></title>
	<meta charset="utf-8">
	<script type="text/javascript" src="js/script.js"></script>
	<link rel="stylesheet" type="text/css" href="css/style.css">
</head>
<body onLoad="Tempo()">
	<header>
		<p id="titulo">Cálculadora de IMC</p>
	</header>
	<section>
		<table>
			<tbody>
				<tr>
					<td><label for="peso">Peso: </label></td>
					<td><input type="text" name="peso" id="peso"></td>
				</tr>
				<tr>
					<td><label for="altura">Altura: </label></td>
					<td><input type="text" name="altura" id="altura"></td>
				</tr>
				<tr>
					<td><button type="submit" onClick="calcularIMC()"><img src="img/certo.png" alt="Calcular" width="30"></button></td>
				</tr>
			</tbody>
		</table>
	</section>
	<div class="tempo" id="lugar">
		
	</div>
</body>
</html>	
Nicolas Coitinho

Nicolas Coitinho

Responder

Post mais votado

09/07/2017

Nícolas o problema se encontra nas primeiras linhas da sua função calcularIMC():

      var Peso = parsefloat(document.getElementById("peso").value);
      var Altura = parsefloat(document.getElementById("altura").value);


O você digitou errado a conversão o certo seria assim:


     var Peso = parseFloat(document.getElementById("peso").value);
     var Altura = parseFloat(document.getElementById("altura").value);


parseFloat com "F" maiúsculo e não minusculo

William Nascimento

William Nascimento
Responder

Mais Posts

10/07/2017

Fabio Rocha

Olá,

Somente complementando o William o JavaScript é case-sensitive e usa o conjunto de caracteres Unicode.

Case-sensitive = "sensível a maiúsculas e minúsculas".

Segue também alguns links bacanas.

[url:descricao=Guias de referência JavaScript]https://www.devmedia.com.br/guias/javascript/29[/url]

Unicode
Link

Grande Abraço espero ter ajudado.
Responder

11/07/2017

Nicolas Coitinho

Obrigado Galera, vocês me ajudaram muito pq nem meu professor conseguiu esse é dos motivos que assino a DevMedia.

Muito Obrigado mesmo galeira.
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar