Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.

Thyago Barbosa

Membros Plenos
  • Total de itens

    35
  • Registro em

  • Última visita

  • Qualificações

    0%

Reputação

0

Sobre Thyago Barbosa

Informações gerais

  • Cidade e Estado
    Guarulhos/SP
  • Sexo
    Masculino
  1. Javascript Chamar função Javascript no input

    @iHollyZinhO Entendi, e como faz pra retornar a função no mesmo input que está ativando o keyup? Tipo, ao invés de ativar na id local, ativar na id teste
  2. Javascript Chamar função Javascript no input

    @iHollyZinhO Então, o return nesse daí tá retornando "undefined" mas quando faço o alert com número ele volta formatado alert(formatReal(-99999999999999)); Olha aí o link só da função: http://jsfiddle.net/zQ8Qq/ @DiF Não ta aplicando a função no input de nenhum jeito não é como se não tivesse função via keyup/ keypress
  3. Galera, tenho a seguinte função, mas não estou conseguindo chamar ela pelo input <input type="text" name="teste" id="teste" onkeyup="formatReal(this)" /> <script> function formatReal( int ) { var tmp = int+''; var neg = false; if(tmp.indexOf("-") == 0) { neg = true; tmp = tmp.replace("-",""); } if(tmp.length == 1) tmp = "0"+tmp tmp = tmp.replace(/([0-9]{2})$/g, ",$1"); if( tmp.length > 6) tmp = tmp.replace(/([0-9]{3}),([0-9]{2}$)/g, ".$1,$2"); if( tmp.length > 9) tmp = tmp.replace(/([0-9]{3}).([0-9]{3}),([0-9]{2}$)/g,".$1.$2,$3"); if( tmp.length > 12) tmp = tmp.replace(/([0-9]{3}).([0-9]{3}).([0-9]{3}),([0-9]{2}$)/g,".$1.$2.$3,$4"); if(tmp.indexOf(".") == 0) tmp = tmp.replace(".",""); if(tmp.indexOf(",") == 0) tmp = tmp.replace(",","0,"); return (neg ? '-'+tmp : tmp); } </script> estou querendo chamar a função pelo onkeyup dentro do input mesmo, se alguém souber me ajuda aí
  4. Javascript Usar meu script sem .js

    @iHollyZinhO Então man, é que o meu script tem mais coisa, mandei só essas partes porque o resto é tudo repetitivo, daí queria que ficasse no mesmo esquema do meu script, mas só alterasse as coisas que dependem do .js entendeu? Só que o problema é que não sei quais são as string's que dependem do jquery lá.
  5. Javascript Usar meu script sem .js

    Gente, tenho o seguinte script que está fazendo cálculos, só que ele só funciona com o <script scr> do jquery 3.2.1 e eu quero tirar ele (porque onde pretendo usar não funciona nenhum arquivo .js online e também não quero ter que baixar o .js e instalar ele no arquivo) Daí o que eu queria saber é, quais alterações eu preciso fazer pra que esse script funcione sem esse .js :/ se alguém souber como faço isso, por favor use o meu como exemplo pra fazer as alterações <select class="qtd-parc" type="text" name="qtd-parc" /> <option value="1" selected>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> <option value="11">11</option> <option value="12">12</option> <option value="13">13</option> <option value="14">14</option> <option value="15">15</option> <option value="16">16</option> <option value="17">17</option> <option value="18">18</option> <option value="19">19</option> <option value="20">20</option> <option value="21">21</option> <option value="22">22</option> <option value="23">23</option> <option value="24">24</option> <option value="25">25</option> <option value="26">26</option> <option value="27">27</option> <option value="28">28</option> <option value="29">29</option> <option value="30">30</option> <option value="31">31</option> <option value="32">32</option> <option value="33">33</option> <option value="34">34</option> <option value="35">35</option> <option value="36">36</option> <option value="37">37</option> <option value="38">38</option> <option value="39">39</option> <option value="40">40</option> <option value="41">41</option> <option value="42">42</option> <option value="43">43</option> <option value="44">44</option> <option value="45">45</option> <option value="46">46</option> <option value="47">47</option> <option value="48">48</option> <option value="49">49</option> <option value="50">50</option> <input class="valr-parc" type="text" name="valr-parc" placeholder="0,00" /> <input class="total-parc" type="text" name="total-parc" readonly /> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> <script type="text/javascript"> $(document).ready(function(){ var qtd_parc = $(".qtd-parc"); var valr_parc = $(".valr-parc"); var total_parc = $(".total-parc"); var dif = $(".diferenca"); var avista = $(".avista"); var zerar = $(".zerar"); valr_parc.on("keyup", function(){ $(this).val($(this).val().replace(/\D/g,'').replace(/[0-9]{12}/, "").replace(/(\d{1})(\d{1,2})$/, "$1,$2").replace(/(\d)(?=(\d{3})+(?!\d))/g, '$1.').replace(/^(\d)/g,"R$ $1")); var nw_valr_parc = valr_parc.val().replace(/[^\d.,]/g, '').replace(".", "").replace(".", "").replace(".", ""); var multiplica = qtd_parc.val() * nw_valr_parc.replace(",", "."); total_parc.val(multiplica.toFixed(2).replace(/\D/g,'').replace(/(\d{1})(\d{1,2})$/, "$1,$2").replace(/(\d)(?=(\d{3})+(?!\d))/g, '$1.').replace(/^(\d)/g,"R$ $1")); }); qtd_parc.on("change", function(){ $(this).val($(this).val().replace(/[^\d]/g, '')); var nw_valr_parc = valr_parc.val().replace(/[^\d.,]/g, '').replace(".", "").replace(".", "").replace(".", ""); var multiplica = qtd_parc.val() * nw_valr_parc.replace(",", "."); total_parc.val(multiplica.toFixed(2).replace(/\D/g,'').replace(/(\d{1})(\d{1,2})$/, "$1,$2").replace(/(\d)(?=(\d{3})+(?!\d))/g, '$1.').replace(/^(\d)/g,"R$ $1")); }); }); </script> Script funcionando: https://jsfiddle.net/gtvzzvy5/
  6. HTML Máscara de Moeda (Estilo Excel)

    @RodrigoMoraiss Eu fiz de outra maneira, usei esses replaces (e peguei alguns outros pra ficar mais resumido) como expressão regular direto na variável assim ó: <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> <script type="text/javascript"> $(document).ready(function(){ var qtd_parc = $(".qtd-parc"); var valr_parc = $(".valr-parc"); var total_parc = $(".total-parc"); var dif = $(".diferenca"); var avista = $(".avista"); var zerar = $(".zerar"); valr_parc.on("keyup", function(){ $(this).val($(this).val().replace(/\D/g,'').replace(/[0-9]{12}/, "").replace(/(\d{1})(\d{1,2})$/, "$1,$2").replace(/(\d)(?=(\d{3})+(?!\d))/g, '$1.').replace(/^(\d)/g,"R$ $1")); var nw_valr_parc = valr_parc.val().replace(/[^\d.,]/g, '').replace(".", "").replace(".", "").replace(".", ""); var multiplica = qtd_parc.val() * nw_valr_parc.replace(",", "."); total_parc.val(multiplica.toFixed(2).replace(/\D/g,'').replace(/(\d{1})(\d{1,2})$/, "$1,$2").replace(/(\d)(?=(\d{3})+(?!\d))/g, '$1.').replace(/^(\d)/g,"R$ $1")); }); qtd_parc.on("change", function(){ $(this).val($(this).val().replace(/[^\d]/g, '')); var nw_valr_parc = valr_parc.val().replace(/[^\d.,]/g, '').replace(".", "").replace(".", "").replace(".", ""); var multiplica = qtd_parc.val() * nw_valr_parc.replace(",", "."); total_parc.val(multiplica.toFixed(2).replace(/\D/g,'').replace(/(\d{1})(\d{1,2})$/, "$1,$2").replace(/(\d)(?=(\d{3})+(?!\d))/g, '$1.').replace(/^(\d)/g,"R$ $1")); }); }); </script> Olha no exemplo online como ficou https://jsfiddle.net/h42dqjeL/1/ A única coisa que queria agora, era pra autocompletar os ,00 em casas decimais, tipo, eu digito "5" e ao invés de aparecer "R$ 5" (como está atualmente), apareceria "R$ 5,00" e a medida que eu fosse digitando número, ele ia substituindo esses "0". Daí ficaria, eu digitava "55" e ficava "R$ 5,50"; digitava "555" e ficava "R$ 5,55", eu tinha visto um código que fazia isso, mas estava usando em função e não sei como coloco como expressão regular igual estou usando. A função que fazia isso era esse aqui, se você souber como faço pra acrescer os "00" como expressão regular me manda aí function moeda(v) { v=v.replace(/\,0+$/,"") // Remove ,00 do final v=v.replace(/[^\d,]/g,"") // Remove tudo que não é dígito ou vírgula v=v.replace(/^0+/g,"") // Remove zeros Ă esquerda if(v.indexOf(",")+1){ v=v.replace(/(,\d)$/,"$10") // 2,5 se torna 2,50 }else{ v+=",00" // Acrescenta ,00 ao final dos inteiros } for(var i=0;i<10;i++) v=v.replace(/(\d)(\d{3}[\.,])/,"$1.$2") // Separador de milhar v="R$ "+v // R$ no comeรงo return v; }
  7. HTML Máscara de Moeda (Estilo Excel)

    @RodrigoMoraiss Entendi, funcionou, mas quando eu faço por exemplo 2x 555.555,55 o valor está retornando 1.111.111,1 sem completar as 2 casas decimais.
  8. Galera, tenho o seguinte script que está formatando o número por 999.999.999 <input class="valr-parc" type="text" name="valr-parc" placeholder="R$ 0,00" style="width: 175px;" /> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> <script type="text/javascript"> $(document).ready(function(){ var valr_parc = $(".valr-parc"); valr_parc.on("keyup", function(){ $(this).val($(this).val().replace(/[^\d,]/g, '').replace(/[0-9]{12}/, "").replace(/(\d{1})(\d{9})$/, "$1.$2").replace(/(\d{1})(\d{6})$/, "$1.$2").replace(/(\d{1})(\d{3})$/, "$1.$2")); }); }); só que queria que formatasse como "R$ 999.999.999" e ainda por cima completasse os ",00" depois da vírgula, tipo, se eu digitasse "960" aparecesse "R$ 960,00"; se eu digitasse "1235,5" aparecesse "R$ 1.235,50". Se puderem usar o meu script acima como exemplo
  9. Galera eu tenho o seguinte script que está fazendo dividindo o "555555555" pelo "valor input do meio", só que enquanto não tem valor no "input do meio", o resultado do "último input" aparece Infinity (justamente porque está dividindo 55555555 por 0 e da erro) Daí eu queria que esse erro no lugar de "Infinity", aparecesse "0". Se alguém souber, usa o meu script abaixo como exemplo por favor </head> <body> <input class="valr-parc" type="text" name="valr-parc" placeholder="R$ 0,00" style="width: 175px;" /> <input class="avista" type="text" name="avista" /> <input class="diferenca" type="text" name="diferenca" readonly /> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> <script type="text/javascript"> $(document).ready(function(){ var valr_parc = $(".valr-parc"); var dif = $(".diferenca"); var avista = $(".avista"); valr_parc.on("keyup", function(){ $(this).val($(this).val().replace(/[^\d.]/g, '')); var calc = valr_parc.val() * 100 / avista.val(); dif.val(calc.toFixed(2) + "%"); }); }); </script> </body> </html>
  10. HTML Máscara de Moeda (Estilo Excel)

    @RodrigoMoraiss Caraca mano, valeu mesmo, era isso daí que estava querendo, serviu direitinho para o que queria aqui adicionado 0 minutos depois @Felipe Paz Man eu tinha visto esse plugin, só que não sei como faz pra coloca ele dentro do meu html :/ adicionado 40 minutos depois @RodrigoMoraiss Man, só uma dúvida, como eu faço pra colocar essa máscara em uma saída de calculo que não recebe valores por "keyup"? Tipo, é uma célula bloqueada pra digitação (readonly="readonly"), onde ela está retornando o resultado da multiplicação de 2 células. No caso seria a célula "Total Parc.", queria que ela aparecesse com essa máscara também. Coloquei o html online pra você dar uma olhada > https://jsfiddle.net/L1819cgk/1/
  11. HTML Máscara de Moeda (Estilo Excel)

    Alguém sabe me dizer como faço pra colocar uma máscara de moeda estilo a formatação "contábil" do Excel? Tipo, você digita "25555" e quando eu retirar o foco ele mostrar "R$ 25.555,00" (ou "2555,8" e aparecer "R$ 2555,80") e quando eu clicar pra digitar novamente, ele aparecer o "25555" (ou "2555,8") que tinha digitado? O que tenho no momento é isso aqui, <td class="bordaPreta"> <span> R$ </span><input type="text" name="valr-parc" placeholder="0,00" /> </td> se alguém puder fazer a máscara usando o exemplo abaixo ficarei agradecido
  12. HTML Calculadora (Excel) em HTML

    @DiF valeu man, usei todos os negócio que você me falou e deixei assim nesse esquema, dá uma olhada aí. As únicas coisas que queria saber, primeiro é como faz pra auto-completar os números como moeda nos campos de "A Vista" e "Valr. Parc.", tipo, eu digito "2" e ele atualiza pra "R$ 2,00"; digito "3,1" e ele retorna "R$ 3,10" no mesmo lugar que digitei. A outra coisa é se esse CDN que chama o jQuery é bloqueado pela Segurança da Informação? Tipo, o CDN do script entra no bloqueio de site? Se sim, como faria pra "converter" essa calculadora em offline (sem usar o CDN)? Caso não, pode deixar assim mesmo calculadorav3.rar
  13. HTML Calculadora (Excel) em HTML

    @DiF Entendi, eu tinha feito de outro jeito, mas esse jeito aí ficou melhor. Eu tinha colocado mais outro replace nessa variavel, daí ficou aquela que você já tinha deixado, e abaixo eu coloquei outra que substitui a vírgula por ponto, igual o que estava de substituir letra por " ". E sobre as casas decimais, como faz pra digitar o valor e já ir colocando as casas decimais automaticamente? Tipo, eu digito o número 23523 direto sem vírgula, e ele vai preenchendo em tempo real 235,23 (daí se caso eu quisesse colocar 55 Reais, teria que digitar 5500)? Queria colocar isso daí na variável "a_vista" e na "valr_parc". E outra dúvida, como faz pra colocar a variável das "qtd" como se fosse uma lista? Tipo, eu deixo de 1 à 55, e se eu digitar algum outro número além desse não vai, e também deixar a opção de selecionar com o mouse, abrindo a lista e selecionando.
  14. HTML Calculadora (Excel) em HTML

    @DiF Agora comecei a entender, coloquei o "keyup" nos 2 valores, tanto no "Qtd" quanto no "Valr Parc" dai tá atualizando nos 2 daí olhei aquele outro script que mandei e coloquei o "readonly" onde está programado pra calcular (Valor Total e Diferença). Ah e eu testei isso dai sem internet e funcionou de boas man, valeu aí pela aula adicionado 6 minutos depois @DiF man, outra dúvida, como faço pra trocar o separador de casa decimal pra "," (vírgula) ao invés de "." (ponto)? tipo, pra escrever o número 2,50 ao invés de 2.50?
  15. HTML Calculadora (Excel) em HTML

    @DiF Opa valeu man, mas só avisando que eu não manjo nada de html, nada mesmo kkk, até tentei entender a sua explicação mas fiquei todo perdido kkkkk (não consegui nem salvar pra usar offline kkkk), eu tava querendo esse negócio pra mim usar no trabalho, porque lá n tem acesso à excel, daí queria esse script em html pra mim colocar no bloco de notas e usar offline na máquina. Ah esse seu que você mandou, como faz pra deixar a atualização do valor do "Valr. Parc." ser instantâneo? Tipo, se eu digitar o valor da "Qtd." e depois digitar o "Valr. Parc.", ele não atualiza o valor "Total Parc.", daí eu tenho que voltar e digitar o valor da "qtd." de novo pra atualizar o valor. Ah, e se puder, manda todo o script pra mim usar offline, achei um na internet que é mais ou menos o que estou querendo (com as partes da fórmula bloqueada pra alteração), só falta a parte que eu digito o "Á Vista" e a parte que calcula esse valor com o "Total". Olha aí <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <form action="" method="post"> Valor Unitário: <input type="text" name="valor_unitario" id="valor_unitario" /> Quantidade: <input type="text" name="qnt" id="qnt" value="0" /> Total: <input type="text" name="total" id="total" readonly="readonly" /> </form> <script type="text/javascript"> function id(el) { return document.getElementById( el ); } function total( un, qnt ) { return parseFloat(un.replace(',', '.'), 10) * parseFloat(qnt.replace(',', '.'), 10); } window.onload = function() { id('valor_unitario').addEventListener('keyup', function() { var result = total( this.value , id('qnt').value ); id('total').value = String(result.toFixed(2)).formatMoney(); }); id('qnt').addEventListener('keyup', function(){ var result = total( id('valor_unitario').value , this.value ); id('total').value = String(result.toFixed(2)).formatMoney(); }); } String.prototype.formatMoney = function() { var v = this; if(v.indexOf('.') === -1) { v = v.replace(/([\d]+)/, "$1,00"); } v = v.replace(/([\d]+)\.([\d]{1})$/, "$1,$20"); v = v.replace(/([\d]+)\.([\d]{2})$/, "$1,$2"); v = v.replace(/([\d]+)([\d]{3}),([\d]{2})$/, "$1.$2,$3"); return v; }; </script> </body> </html>

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×