Fóruns sobre PHP, JavaScript, HTML, MySQLi, jQuery, Banco de Dados, CSS


Moderador: web

 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 120
Sexo: Masculino

Somar em moeda Real campos dinâmicos em JavaScript

08-10-2013 15:28

Olá Pessoal, tudo bem?
Estou precisando resolver um problema com a soma em Real dos campos dinâmicos, alguém pode me ajudar?

<script type="text/javascript"> var qtdeCampos = 1; var iCount = 1; function addCampos() { if(qtdeCampos<"999"){   //Aparece o campo total if ('novo') document.getElementById('total').style.display = "block"; else document.getElementById('total').style.display = "none";   var objPai = document.getElementById("campoPai"); //Criando o elemento DIV; var objFilho = document.createElement("div"); //Definindo atributos ao objFilho: objFilho.setAttribute("id","filho"+qtdeCampos); //Inserindo o elemento no pai: objPai.appendChild(objFilho); //Escrevendo algo no filho recém-criado: document.getElementById("filho"+qtdeCampos).innerHTML = "<label>Item: <input type='text' id='"+iCount+"' name='texto' size='2' value='"+iCount+"'></label> <label>Histórico: <input type='text' id='historico"+qtdeCampos+"' name='campo[]' size='80'></label> &nbsp;&nbsp;&nbsp; <label>Valor: <input type='text' id='valor"+qtdeCampos+"' name='campo[]' size='14'></label> &nbsp;&nbsp;&nbsp; <input type='button' onclick='removerCampo("+qtdeCampos+")' value='Remover'>"; qtdeCampos++;           var campoPai = document.getElementById('campoPai');           campoPai.innerHTML = campoPai.innerHTML;         iCount++; } }   function removerCampo(id) { var objPai = document.getElementById("campoPai"); var objFilho = document.getElementById("filho"+id);   var campoValor = document.getElementById("valor"+id).value;   //Removendo linha com id específico do nó-pai: if(confirm("Deseja excluir o item:\n"+id+"")){ var removido = objPai.removeChild(objFilho); } } //SOMAR function id(e){ return document.getElementById(e); var valor = document.getElementById("valor"+id).value == ""?0:document.getElementById("valor"+id).value; var money = id(e).value.replace( ',', '.' ); return parseFloat(money)*100;   var total = getMoney('valor'); id('total_orc').value = 'R$ '+total/100; } </script>


<form name="form1" action="novo2.php?acao=enviar" method="post"> <input type="button" id="novo" name="novo" value="Novo" onClick="addCampos()"> <div id="campoPai"></div> <div id="total" style="padding-left:710px;display:none"> <input type="text" name="total_orc" id="total_orc" value="Total" maxlength="100" size="14" /> </div> <br><br><input type="submit" value="Enviar"> </form> 

MOVIDO PARA JAVASCRIPT
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17392
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Somar em moeda Real campos dinâmicos em JavaScript

08-10-2013 16:28

Estou passando essa função em jQuery que é mais prática para somar.

<script src="jquery.js"></script>   <script> $(document).ready(function() {   // valor inicial v = 0;   // limpa o campo se estiver com zero $('.campo').click(function() { if($(this).val()=="0") { $(this).val('') } });   // adiciona o zero se o campo estiver vazio $('.campo').blur(function() { if($(this).val()=="") { $(this).val('0') } });   // soma ao digitar no campo $('.campo').keyup(function() {   $('.campo').each(function() { v+=parseFloat($(this).val()); });   $('.total').val(v);   v = 0; });   }); </script>


<form> v1<input type="text" class="campo" value="0"> v2<input type="text" class="campo" value="0">   total<input type="text" class="total" value=""> </form>

0
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum :rock:
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 120
Sexo: Masculino

Somar em moeda Real campos dinâmicos em JavaScript

08-10-2013 18:24

Olá web, tudo bem? Muito Obrigado por responder...

Está dando este erro:

Mensagem: Objeto esperado
Linha: 1
Caractere: 1
Código: 0
URI: jquery/jquery.somar.real.js
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17392
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Somar em moeda Real campos dinâmicos em JavaScript

08-10-2013 18:34

Você tem a biblioteca jquery na mesma pasta que está rodando o script?
0
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum :rock:
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 120
Sexo: Masculino

Somar em moeda Real campos dinâmicos em JavaScript

08-10-2013 18:39

Usei dentro e fora. mas dá o mesmo erro...
ESTOU FAZENDO:

<script type="text/javascript" src="jquery/jquery.somar.real.js"></script>


  $(document).ready(function() { // valor inicial v = 0; // limpa o campo se estiver com zero $('.inputcadv').click(function() { if($(this).val()=="0") { $(this).val('') } }); // adiciona o zero se o campo estiver vazio $('.inputcadv').blur(function() { if($(this).val()=="") { $(this).val('0') } }); // soma ao digitar no campo $('.inputcadv').keyup(function() { $('.inputcadv').each(function() { v+=parseFloat($(this).val()); }); $('.inputcadt').val(v); v = 0; }); });  

0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17392
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Somar em moeda Real campos dinâmicos em JavaScript

08-10-2013 18:44

Se possível testa com a biblioteca jquery online

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script>

0
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum :rock:
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 120
Sexo: Masculino

Somar em moeda Real campos dinâmicos em JavaScript

08-10-2013 19:06

Não funfou...
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17392
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Somar em moeda Real campos dinâmicos em JavaScript

08-10-2013 19:33

Eu testei aqui usando a biblioteca online do jquery no código de exemplo que eu postei e funcionou. Faz o teste. Algum outro código seu pode está conflitando.
0
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum :rock:
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 120
Sexo: Masculino

Somar em moeda Real campos dinâmicos em JavaScript

08-10-2013 19:38

eu tenho que usar os dois?

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script>

e

<script type="text/javascript" src="jquery/jquery.somar.real.js"></script>

Sozinho ou juntos dá o mesmo erro!
O meu código é só o que eu postei no primeiro post...
0
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 120
Sexo: Masculino

Somar em moeda Real campos dinâmicos em JavaScript

08-10-2013 19:47

Os meus campos são "dinâmicos" e eu adicionei a eles: class="inputcadv" para os campos de valor
e
class="inputcadt" para os campos de total
Isto está correto?
Acho que o erro está em eu não tá acertando as class...
Vou "mexer" mais aqui!
Obrigado!
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17392
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Somar em moeda Real campos dinâmicos em JavaScript

08-10-2013 20:05

A class aparentemente está ok. Veja se usa como base meu exemplo, depois vai adicionando seus dados.
0
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum :rock:
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 120
Sexo: Masculino

Somar em moeda Real campos dinâmicos em JavaScript

08-10-2013 20:49

FICOU ASSIM: (jquery.somar.real.js)

//$(document).ready(function() { function calculaTotal(){ // valor inicial v = 0;   //var money = id(e).value.replace( ',', '.' ); //return parseFloat(money)*100; //var total = getMoney('inputcadv'); //id('inputcadt').value = 'R$ '+total/100;   // limpa o campo se estiver com zero $('.inputcadv').click(function() { if($(this).val()=="0") { $(this).val('') } }); // adiciona o zero se o campo estiver vazio $('.inputcadv').blur(function() { if($(this).val()=="") { $(this).val('0') } }); // soma ao digitar no campo $('.inputcadv').keyup(function() { $('.inputcadv').each(function() { v+=parseFloat($(this).val()); }); $('.inputcadt').val(v); // = 'R$ '+total/100; v = 0; }); }

No input ficou assim

<label>Valor: R$ <input type='text' id='valor"+qtdeCampos+"' name='campo[]' value='0' class='inputcadv' size='14' onkeyup='calculaTotal()'></label>

A dúvida agora é:
1- Como fazer o este script adicionar o R$
2- Reconhecer a vírgula(,) em vez do ponto(.)
3- Fazer a soma mostra o valor real sem a dizima, tipo 1.229999999 = 1,23 (pq o javascript coloca 229999 em vez do 23?)

Muito obrigado web!
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17392
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Somar em moeda Real campos dinâmicos em JavaScript

08-10-2013 21:02

Baseado no exemplo que postei, troca o trecho do each por esse

$('.campo').each(function() { Valor = $(this).val().replace(',','.'); v+=Number(Valor); });

0
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum :rock:
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 120
Sexo: Masculino

Somar em moeda Real campos dinâmicos em JavaScript

31-10-2013 14:00

OK... Deu certo!
Esqueci de informar... Desculpe, é que tá muito corrido aqui... rs
Obrigado web e que Deus te ilumine!
0

Quem está online

Usuários navegando neste fórum: Bing [Bot]