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

Problemas com decimais


Guest AToyansk

Pergunta

Pessoal,

Preciso de uma ajuda para definir casas decimais (apenas 2) no resultado de uma multiplicação.

O meu javascript está assim:

<script type="text/javascript">
        function Calcula(id){
                var frm = document.form1;
                var qtd = frm['quantidade_'+id].value;
                var tmh = frm['tamanho_'+id].value;
                frm['resp_'+id].value = (qtd * tmh );
        }
</script>
Ele multiplica os campos tamanho_ e quantidade_ e informa no campo resp_, que estão assim:
<select name="tamanho_#IdImagem#" id="tamanho_#IdImagem#" onchange="java script:Calcula(#IdImagem#)">
            <option value="0.45">10x15</option>
            <option value="0.72">13x18</option>
            <option value="0.90">15x21</option>
            </select>

<select name="quantidade_#IdImagem#" id="quantidade_#IdImagem#" onchange="java script:Calcula(#IdImagem#)">
                    <option value="1">1</option>
                    <option value="2">2</option>
                    <option value="3">3</option>
                        <option value="4">4</option>
                    <option value="5">5</option>
                    <option value="6">6</option>
                        <option value="7">7</option>
                    <option value="8">8</option>
                    <option value="9">9</option>
                        <option value="10">10</option>
</select>


Preço: <br />R$ <input name="resp_#IdImagem#" type="text" class="preço" id="resp_#IdImagem#" value="0.45" size="4" readonly="readonly" />

Notem que estou usando variáveis no ColdFusion, pois estes campos possuem quantidade dinâmica, uma vez que são "montados" de acordo com a quantidade de registros existentes para que o usuário informe estes dados (como um carrinho de compras).

O problema está na formatação do decimal. Primeiro que, se tenho o valor 0.90, ele exibe 0.9 (elimina o 0 final, e não poderia), segundo que existem resultados como 5.85000095, e que deveriam retornar apenas 5.85 (apenas 2 casas decimais).

Como posso resolver?

Agradeço desde já as respostas!

Airton

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

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...