Ir para conteúdo
Fórum Script Brasil
  • 0

Calculo Em Javascript


Guest Alex Magno

Pergunta

Guest Alex Magno

Olá,

Preciso de uma função em javascript para fazer o cálculo do valor total.

Ex.

Tenho um formulário um formulário com o campo "qtd", "unitario" e o campo "total". a função deverá calcular a "qtd" * "unitario". Fiz da seguinte maneira:

var num1 = parseFloat(eval(qtd.value));

var num2 = parseFloat(eval(unitario.value));

var resp = num1 * num2;

Só tem um problema, quando o resultado for número inteiro, não aparece as casas decimais. Ex. qtd = 2, e unitário = 5, o resultado do campo total será 10. Eu gostaria que o resultado fosse 10,00.

Outro Ex. se a qtd = 1.3 e o valor unitário for 2.54 o valor total será de 3.302. Gostaria que limitasse a somente duas casas decimais, o resultado correto deveria ser 3.30.

Tem como?

Link para o comentário
Compartilhar em outros sites

6 respostass a esta questão

Posts Recomendados

  • 0

não use a função eval.

var num1 = parseFloat(qtd.value);

Pra ajeitar as casas decimais, você vai ter que tranformar o resultado para string, procuar pela existencia de um ponto (.) e contar os caracteres depois do ponto.

c pode usar as funções toString()], indexOf() e substring()

Link para o comentário
Compartilhar em outros sites

  • 0
Guest Tânia Michel Pereira

Olá Alex, acredito que você já tenha resolvido o teu problema. Mas mesmo assim tomo a liberdade de passar a dica.

...

var resp = num1 * num2;

resp = Math.ceil( 100* resp)/100;

...

Link para o comentário
Compartilhar em outros sites

  • 0

Alex, você conseguiu resolver seu problema? Estou c/ a mesma dificuldade, tenho o valor correto (Ex.: 100.00) mas não consigo passar p/ o value do meu campo c/ as decimais, aparece só o valor inteiro (100), entrei no link indicado mas não encontrei/entendi como resolver o problema no momento de passar p/ o campo.value.

Agradeço se puder dar uma dica.

Link para o comentário
Compartilhar em outros sites

  • 0

creio que o código abaixo poderia ser útil para o que desejam:

<html>

<head>

<title></title>

&lt;script language="javascript" type="text/javascript">

function arredondar (){

var num1 = 2

var num2 = 5

var resp = num1 * num2;

var numero2casas = resp.toFixed(2); //aumenta as casas

alert(numero2casas)

}

</script>

</head>

<body>

<input name="alerta" id="alerta" type="button" onclick="arredondar()">

</body>

</html>

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      651,9k
×
×
  • Criar Novo...