
Thyago Barbosa
Membro Pleno-
Posts
43 -
Cadastrado em
-
Última visita
Tipo de conteúdo
Artigos
Selos
Livros
Cursos
Análises
Fórum
Tudo que Thyago Barbosa postou
-
Javascript Expressão Regular Match x(?=y)
Thyago Barbosa respondeu ao tópico de Thyago Barbosa em Web e banco de dados
@HwapX Mano, não dá pra usar o + dentro do lookbehind? Tipo, pelo google chrome funcionou isso aqui (?<=\d{5}\/\d+\s+\d{2}\/\d{2}\/\d{4}\s+\d+\s+)[\w\s\/]+(?=.+\s+R\$)/) Mas fui olhar no Firefox e no IE e tá dando look-behind invalido, e só dá problema quando coloco o contador '+' em algum valor -
Galera, estou tentando fazer um match, que busque "xxx dias" que está entre um monte de dados. Pra mim conseguir achar, tive que fazer /Atr\. Real\:\s+\d+ dias/ (por que só fazendo \d+ dias ele busca outros valores que não é o que eu quero) e depois de puxar essa Array, preciso dar match novamente com o \d+ dias. Vi que tem uma funcionalidade que ele consegue buscar o valor seguido de outro sem gravar o que foi seguido, no caso se eu quisesse pegar só o número de dias seria /\d+(?=dias)/. Daí, como eu faria pra fazer essa busca ao contrário? Ao invés de ser "valor seguido(e não gravado) de x" fosse "valor(não gravado) seguido de x (gravado)"? No caso, algo mais ou menos: /(Atr\. Real\:=?)\s+\d+ dias/ pra que viesse só o "xxx dias" que está sendo seguido de "Atr. Real: "
-
Javascript Textarea em Tabela (JavaScript)
Thyago Barbosa respondeu ao tópico de Thyago Barbosa em Web e banco de dados
@DiF Entendi, mas por exemplo, se eu pegar esse arquivo html, e abrir em outro computador, ele vai continuar com os dados que estavam lá ou só se abrir o html na mesma máquina em que foi salva os dados? -
Javascript Textarea em Tabela (JavaScript)
Thyago Barbosa respondeu ao tópico de Thyago Barbosa em Web e banco de dados
@Felipe Paz É porque se eu utilizar a tabela direto no navegador, não vou conseguir manter os dados da tabela, a não ser que funcionasse igual à um arquivo de excel, que mesmo trocando de computador ele mantem os dados que foram digitados. Teria alguma forma de armazenagem de dados (sem ser com LocalStorage que não armazena muita coisa) utilizando JavaScript puro? -
Javascript Textarea em Tabela (JavaScript)
Thyago Barbosa respondeu ao tópico de Thyago Barbosa em Web e banco de dados
@DiF Não po, essa parte de conversão pra tabela não é pra manter o valor, é que estou querendo fazer o seguinte, quero transformar o textarea em tabela, e na tabela quero usar um "SortBy" pra organizar em ordem alfabética tal coluna, e depois que fizer isso, quero que transforme essa tabela editada novamente em um texto. Só que daí estou fazendo em partes pra não ficar muito complicado -
Galera, alguém sabe algo em JavaScript (Puro) que transforme valores de uma textarea em uma tabela utilizando " | " para separar colunas (<td>) e o enter/ quebra de linha pra separar a <tr> igual está na imagem abaixo (Obs: Será através de um botão onclick que será feito essa transformação, não está na imagem porque foi só pra ilustrar mesmo) Se alguém souber, por gentileza manda exemplo online
-
Galera, como faço pra utilizar o seguinte Regex ^R\$(\d{1,3}(\.\d{3})*|\d+)(\,\d{2})?$ Em um .replace(), como por exemplo v = v.replace(/(\d{1})(\d{1,2})$/, "$1,$2")
-
CSS Condição If pra cada tipo de navegador
Thyago Barbosa respondeu ao tópico de Thyago Barbosa em Web e banco de dados
@DiF Entendi, pior que tem que ser html puro mesmo :/ Não tem nenhuma gambiarra com Javascript que consiga fazer isso mais ou menos? -
Galera, tenho um código que estou usando o estilo "padding" só que o valor que coloco dentro do padding, tipo "padding: 0px 4px" mostra um estilo diferente em cada navegador. Tipo, no Firefox fica um quadrado, e no Chrome fica um retângulo (altura > largura), daí existe alguma condição do tipo (só exemplificando) "If (navegador = Firefox){padding: 0px 4px} If (navegador = Chrome){padding: 8px 2px}. Tipo nesse esquema (sei que não existe desse jeito, mas foi só pra ilustrar.)
-
Javascript Chamar função Javascript no input
Thyago Barbosa respondeu ao tópico de Thyago Barbosa em Web e banco de dados
@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 -
Javascript Chamar função Javascript no input
Thyago Barbosa respondeu ao tópico de Thyago Barbosa em Web e banco de dados
@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 -
Javascript Chamar função Javascript no input
Thyago Barbosa postou um tópico em Web e banco de dados
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í -
Javascript Usar meu script sem .js
Thyago Barbosa respondeu ao tópico de Thyago Barbosa em Web e banco de dados
@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á. -
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/
-
HTML Máscara de Moeda (Estilo Excel)
Thyago Barbosa respondeu ao tópico de Thyago Barbosa em Web e banco de dados
@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; } -
HTML Máscara de Moeda (Estilo Excel)
Thyago Barbosa respondeu ao tópico de Thyago Barbosa em Web e banco de dados
@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. -
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>
-
HTML Máscara de Moeda (Estilo Excel)
Thyago Barbosa respondeu ao tópico de Thyago Barbosa em Web e banco de dados
@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/ -
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
-
HTML Calculadora (Excel) em HTML
Thyago Barbosa respondeu ao tópico de Thyago Barbosa em Web e banco de dados
@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 -
HTML Calculadora (Excel) em HTML
Thyago Barbosa respondeu ao tópico de Thyago Barbosa em Web e banco de dados
@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. -
HTML Calculadora (Excel) em HTML
Thyago Barbosa respondeu ao tópico de Thyago Barbosa em Web e banco de dados
@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? -
HTML Calculadora (Excel) em HTML
Thyago Barbosa respondeu ao tópico de Thyago Barbosa em Web e banco de dados
@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> -
Galera, alguém poderia me dizer como eu faço pra fazer uma calculadora em HTML nesse esquema do Excel? Tipo, funciona assim, eu digito a quantidade de parcela e o valor da parcela, daí na coluna "Total Parc." ficaria a fórmula multiplicando o valor da "Qtd." com o "Valr.". Na célula "A Vista" é pra mim digitar o valor. E na "Diferença" eu queria que calculasse o valor "A Vista" - (menos) o "Total Parc." O resto das células, eu queria que ficasse tudo bloqueado, os únicos que seriam pra digitar seriam os que estão sem nada dentro.
-
Renomear arquivos com a data de modificação
Thyago Barbosa respondeu ao tópico de Thyago Barbosa em Versões até Windows 8
@StortiX testei esse que você mandou, mas não funcionou não, o arquivo fica renomeado assim: "arquivo2 - ~6,2-~4,2-~0,4_~8,2-~10,2-~12,2", testa ai pra ver se está indo normal, se souber o que está errado manda aí por favor
Sobre o Clube do Hardware
No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades 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