Somar valores com números reais
Pessoal boa noite,
Achei esse código na net, mas a princípio ele resolvia meu caso. Logo ao tentar calcular valores maiores por exemplo: a soma 100.000,00 + 100.000,00 + 100.000,00 daria como resultado 300.000,00. Com a execução deste código o resultado é R$ 300.
Alguém poderia me guiar na solução deste problema?
Grato...
<html>
<head>
<script type="text/javascript">
function id( el ){
return document.getElementById( el );
}
function getMoney( el ){
var money = id( el ).value.replace( ',', '.' );
return parseFloat( money )*100;
}
function soma()
{
var total = getMoney('campo1')+getMoney('campo2')+getMoney('campo3');
id('campo4').value = 'R$ '+total/100;
}
</script>
</head>
<body>
<form action="" method="">
<input name="campo1" id="campo1" value="100.000,00" />
<input name="campo2" id="campo2" value="100.000,00" />
<input name="campo3" id="campo3" value="100.000,00" />
<input name="campo4" readonly="readonly" id="campo4" />
<input type="button" onclick="soma()" value="Soma de Valores" />
</form>
</body>
</html>
Achei esse código na net, mas a princípio ele resolvia meu caso. Logo ao tentar calcular valores maiores por exemplo: a soma 100.000,00 + 100.000,00 + 100.000,00 daria como resultado 300.000,00. Com a execução deste código o resultado é R$ 300.
Alguém poderia me guiar na solução deste problema?
Grato...
<html>
<head>
<script type="text/javascript">
function id( el ){
return document.getElementById( el );
}
function getMoney( el ){
var money = id( el ).value.replace( ',', '.' );
return parseFloat( money )*100;
}
function soma()
{
var total = getMoney('campo1')+getMoney('campo2')+getMoney('campo3');
id('campo4').value = 'R$ '+total/100;
}
</script>
</head>
<body>
<form action="" method="">
<input name="campo1" id="campo1" value="100.000,00" />
<input name="campo2" id="campo2" value="100.000,00" />
<input name="campo3" id="campo3" value="100.000,00" />
<input name="campo4" readonly="readonly" id="campo4" />
<input type="button" onclick="soma()" value="Soma de Valores" />
</form>
</body>
</html>
Telson
Curtidas 0
Respostas
Telson
26/09/2015
Olá pessoal, alguém pode me ajudar? Sou novo iniciante e não entendo muita coisa de html e javascript. Espero ser ajudado aqui neste fórum.
Valeuu...
Valeuu...
GOSTEI 0
Israel Suhanko
26/09/2015
olá, Telson!
Tente usar o tipo Long no lugar do Float e veja se resolve o problema.
Tente usar o tipo Long no lugar do Float e veja se resolve o problema.
GOSTEI 0
Israel Suhanko
26/09/2015
Nesse link tem uma explicação detalhada para a questão. Espero
GOSTEI 0
Israel Suhanko
26/09/2015
Esse link trata detalhadamente seu problema. Espero que ajude.
https://battisti.wordpress.com/2007/03/08/arredondar-formatando-e-desformatando-valores-em-javascript/
https://battisti.wordpress.com/2007/03/08/arredondar-formatando-e-desformatando-valores-em-javascript/
GOSTEI 0