Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

elbuzzer

NaN

Recommended Posts

Olá http://forum.imasters.com.br/public/style_emoticons/default/joia.gif ,

 

Estou com um problema, quando digito os valores para calcular não está dando certo exemplo se digitar 12 em um campo e 12 no outro minha função da certo mas se eu digitar 12 em um campo e 100.000.000 no outro campo minha soma

dá errado pois ele esta retornando NaN.

Obs. não trabalho com centavos

Abaixo está o código

 

Obrigado pela atenção.

 

// Função para realizar o calculo

 

<script type="text/javascript">

function startCalc(){

interval = setInterval("calc()",1);

}

function calc(){

//Calcula o Ativo Financeiro

disponivel = document.form.disponivel.value;

aplicacoes_financeiras = document.form.aplicacoes_financeiras.value;

document.form.somafinanceiro.value = (disponivel * 1) + (aplicacoes_financeiras * 1);

}

function stopCalc(){

clearInterval(interval);

}

// End -->

</script>

 

// Finção para formatar números Ex. 123.123.000

<script LANGUAGE="JavaScript">

<!-- Início

function formatadinheiro(num) {

num = num.toString().replace(/\$|\,/g,'');

if(isNaN(num))

num = "0";

sign = (num == (num = Math.abs(num)));

num = Math.floor(num*100+0.50000000001);

cents = num%100;

num = Math.floor(num/100).toString();

if(cents<10)

cents = "0" + cents;

for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)

num = num.substring(0,num.length-(4*i+3))+'.'+

num.substring(num.length-(4*i+3));

return (((sign)?'':'-') + num);

}

// Fim -->

</script>

 

// Início do formulário

<form name="form" method="post" action="">

//Informa os valores

<input name="disponivel" type="text" id="disponivel" onFocus="startCalc();" onBlur="stopCalc(); this.value=formatadinheiro(this.value);" size="15" maxlength="15">

 

<input name="aplicacoes_financeiras" type="text" id="aplicacoes_financeiras" onFocus="startCalc();" onBlur="stopCalc(); this.value=formatdollar(this.value);" size="15" maxlength="15">

 

// Imprime o resultado

<input name="somafinanceiro" type="text" id="somafinanceiro" onFocus="startCalc();" onBlur="stopCalc();" size="15" maxlength="15">

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tente utilizar o Math.abs(valor) ...

Ele converte para numero absoluto...

Talvez funcione...

 

Pelo menos comigo funciona...

 

tipo assim :

 

disponivel = Math.abs(document.form.disponivel.value);aplicacoes_financeiras = Math.abs(document.form.aplicacoes_financeiras.value);document.form.somafinanceiro.value = (disponivel * 1) + (aplicacoes_financeiras * 1);

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.