Jump to content
Claudia França

Mostrar campo moeda

Recommended Posts

Como eu faço para o valor recebido em dólar ou real, mostrar os campos de moeda.

 

 <select >
            
            <option value="Real" id="valor" size="8" maxLength="8" >Real R$=</option>
            
            <option value="Dolar" id="valor" size="8" maxLength="8" >Dolar $=</option>
           
        </select>
        
        <input type "text" id="valor"  onBlur= 'pegavalor(this.value);'> </br>

 

 

Tentei algumas coisas mas, não funciona.

O resultado tem que aparecer como na imagem.

 

Captura de Tela 2018-09-26 às 16.03.58.png

Share this post


Link to post
Share on other sites

Claudia, saudações.

 

Tenta assim:

 

script

<script language="JavaScript" > 

    function currencyFormat(fld, milSep, decSep, e) {
      var sep = 0;
      var key = '';
      var i = j = 0;
      var len = len2 = 0;
      var strCheck = '0123456789';
      var aux = aux2 = '';
      var whichCode = (window.Event) ? e.which : e.keyCode;

      if (whichCode == 13) return true;  // Enter
      key = String.fromCharCode(whichCode);  // Get key value from key code

      if (strCheck.indexOf(key) == -1) return false;  // Not a valid key
      len = fld.value.length;

      for(i = 0; i < len; i++)
      if ((fld.value.charAt(i) != '0') && (fld.value.charAt(i) != decSep)) break;

      aux = '';
      for(; i < len; i++)
      if (strCheck.indexOf(fld.value.charAt(i))!=-1) aux += fld.value.charAt(i);
      aux += key;
      len = aux.length;

      if (len == 0) fld.value = '';
      if (len == 1) fld.value = '0'+ decSep + '0' + aux;
      if (len == 2) fld.value = '0'+ decSep + aux;
      if (len > 2) {
        aux2 = '';
        for (j = 0, i = len - 3; i >= 0; i--) {
        if (j == 3) {
        aux2 += milSep;
        j = 0;
        }
        aux2 += aux.charAt(i);
        j++;
        }
        fld.value = '';
        len2 = aux2.length;
        for (i = len2 - 1; i >= 0; i--)
        fld.value += aux2.charAt(i);
        fld.value += decSep + aux.substr(len - 2, len);
      }
      return false;
    }

    function id(el) {
      return document.getElementById( el );
    }
    function total( qtde, vrUnit ) {
      return parseFloat(qtde.replace(',', '.'), 10) * parseFloat(vrUnit.replace(',', '.'), 10);
    }
    window.onload = function() {
      id('vrUnit').addEventListener('keyup', function() {
        var result = total( this.value , id('qtde').value );
        id('vrTotal').value = String(result.toFixed(2)).formatMoney();
      });

      id('qtde').addEventListener('keyup', function(){
        var result = total( id('vrUnit').value , this.value );
        id('vrTotal').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>    

 

no form (INPUT), fica assim:

                    <div class="col-sm-2 invoice-col">
                      <label for="vlrUnit">Valor Unitário</label>
                      <input type="text" id='vrUnit' name="vrUnit" class="form-control" maxlength="12" 
                             onkeypress="return(currencyFormat(this,'','.',event))" >
                    </div>   

 

Espero ter ajudado.

 

Renato

Share this post


Link to post
Share on other sites

Claudia,

 

também pode fazer assim:

 

no form (INPUT):

            <br/>
            <label> 
              <span>Valor........:</span>
                <input type="text" name="valor" size="15" onKeyUp="dinheiro(this,15)" />
             </label>

 

script:

<script type="text/javascript">

  //Valida os campos moeda do formulário 
  function dinheiro(cur,len) {
     n='__0123456789';
     d=cur.value;
     l=d.length;
     r='';

     if (l > 0){
        z=d.substr(0,l-1);
        s='';
        a=2;

          for (i=0; i < l; i++){
              c=d.charAt(i);
              if (n.indexOf(c) > a){
                  a=1;
                  s+=c;
              };
          };


          l=s.length;
          t=len-1;
          if (l > t){
              l=t;
              s=s.substr(0,t);
          };


          if (l > 2){
              r=s.substr(0,l-2)+','+s.substr(l-2,2);
          } else {
              if (l == 2){
                  r='0,'+s;
              } else  {
                  if (l == 1){
                      r='0,0'+s;
                  };
              };
          };


          if (r=='0,00'){
             return false; 
          } else {
              l=r.length;
              if (l > 6){
                  j=l%3;
                  w=r.substr(0,j);
                  wa=r.substr(j,l-j-6);
                  wb=r.substr(l-6,6);
                  if (j > 0){
                      w+='.';
                  };

                  k=(l-j)/3-2;
                  for (i=0; i < k; i++){
                      w+=wa.substr(i*3,3)+'.';
                  };
                  r=w+wb;
              };
          };

     };

     if (r.length <= len){
      cur.value=r;
     } else {
      cur.value=z;
     };

     return 'ok';

  };

</script>

 

Share this post


Link to post
Share on other sites
18 horas atrás, Paulo Cesar Di Cicco disse:

você precisa aplicar uma mascara de valor no input.
Seja em PHP ou Jquery.

Procure por number_format ou mascara de valor 

 Obrigada.

Share this post


Link to post
Share on other sites
Em 27/09/2018 at 10:54, Remazela disse:

Claudia,

 

também pode fazer assim:

 

no form (INPUT):


            <br/>
            <label> 
              <span>Valor........:</span>
                <input type="text" name="valor" size="15" onKeyUp="dinheiro(this,15)" />
             </label>

 

script:


<script type="text/javascript">

  //Valida os campos moeda do formulário 
  function dinheiro(cur,len) {
     n='__0123456789';
     d=cur.value;
     l=d.length;
     r='';

     if (l > 0){
        z=d.substr(0,l-1);
        s='';
        a=2;

          for (i=0; i < l; i++){
              c=d.charAt(i);
              if (n.indexOf(c) > a){
                  a=1;
                  s+=c;
              };
          };


          l=s.length;
          t=len-1;
          if (l > t){
              l=t;
              s=s.substr(0,t);
          };


          if (l > 2){
              r=s.substr(0,l-2)+','+s.substr(l-2,2);
          } else {
              if (l == 2){
                  r='0,'+s;
              } else  {
                  if (l == 1){
                      r='0,0'+s;
                  };
              };
          };


          if (r=='0,00'){
             return false; 
          } else {
              l=r.length;
              if (l > 6){
                  j=l%3;
                  w=r.substr(0,j);
                  wa=r.substr(j,l-j-6);
                  wb=r.substr(l-6,6);
                  if (j > 0){
                      w+='.';
                  };

                  k=(l-j)/3-2;
                  for (i=0; i < k; i++){
                      w+=wa.substr(i*3,3)+'.';
                  };
                  r=w+wb;
              };
          };

     };

     if (r.length <= len){
      cur.value=r;
     } else {
      cur.value=z;
     };

     return 'ok';

  };

</script>

 

Remazela, obrigada pela ajuda, refiz os testes com meu código e seguindo seu raciocínio e deu tudo certo.  Muita sabedoria para vida toda.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By ricardonews
      Olá pessoal, fiz 2 formularios  de login em jquery e ajax, um eu vi na internert o modelo então fiz umas adaptações e funcionou com meu banco de dados. porem o outro que fiz baseado nele não funcionou. vou postar aqui pra voces o funcionando e o não funcionando, alguém pode me dar uma ajuda?, dizer que erro é esse? ele simplesmente não loga e não aparece erros no console.
      <!doctype html> <html> <?php require_once"config.php"; ?> <head> <title>APRENDIZ DE JS</title> <link href="style.css" rel="stylesheet" type="text/css"> <script src="jquery-3.2.1.min.js" type="text/javascript"></script> <script type="text/javascript"> $(document).ready(function(){ $("#but_submit").click(function(){ var username = $("#meu_nome").val().trim(); var password = $("#minha_senha").val().trim(); if( username != "" && password != "" ){ $.ajax({ url:'pesquisar.php', type:'post', data:{username:username,password:password}, success:function(response){ var msg = ""; if(response == 1){ window.location = "home.php"; }else{ msg = "Invalid username and password!"; } $("#message").html(msg); } }); } }); }); </script> </head> <body> <div class="container"> <div id="div_login"> <h1>Login</h1> <div id="message"></div> <div> <input type="text" class="textbox" id="meu_nome" name="meu_nome" placeholder="Username" /> </div> <div> <input type="password" class="textbox" id="minha_senha" name="minha_senha" placeholder="Password"/> </div> <div> <input type="button" value="logar" name="but_submit" id="but_submit" /> </div> </div> </div> </body> </html> /* Container */ .container{ width:40%; margin:0 auto; } /* Login */ #div_login{ border: 1px solid gray; border-radius: 3px; width: 470px; height: 270px; box-shadow: 0px 2px 2px 0px gray; margin: 0 auto; } #div_login h1{ margin-top: 0px; font-weight: normal; padding: 10px; background-color: cornflowerblue; color: white; font-family: sans-serif; } #div_login div{ clear: both; margin-top: 10px; padding: 5px; } #div_login .textbox{ width: 96%; padding: 7px; } #div_login input[type=submit]{ padding: 7px; width: 100px; background-color: lightseagreen; border: 0px; color: white; } #message{ width:100%; text-align:center; color:red; } /* media */ @media screen and (max-width:720px){ .container{ width: 100%; } #div_login{ width: 99%; } } <?php require_once "config.php"; // AQUI É O PESQUISAR PHP $uname = mysqli_real_escape_string($con,$_POST['username']); $password = mysqli_real_escape_string($con,$_POST['password']); if ($uname != "" && $password != ""){ $sql_query = "SELECT count(*) as cntUser FROM usuarios WHERE username='".$uname."' and password='".$password."'"; $result = mysqli_query($con,$sql_query); $row = mysqli_fetch_array($result); $count = $row['cntUser']; if($count > 0){ $_SESSION['uname'] = $uname; echo 1; }else{ echo 0; } } <?php require_once "config.php"; // AQUI É A HOME.PHP // Check user login or not if(!isset($_SESSION['uname'])){ header('Location: index.php'); } // logout if(isset($_POST['but_logout'])){ session_destroy(); header('Location: index.php'); } ?> <!doctype html> <html> <head> <title>SEJA BEM VINDO!</title> </head> <body> <h1>PÁGINA INICIAL</h1> <form method='post' action=""> <input type="submit" value="SAIR" name="but_logout"> </form> </body> </html> <?php // ESSE AQUI É A CONFIG.PHP session_start(); $host = "localhost"; /* Host name */ $user = "root"; /* User */ $password = ""; /* Password */ $dbname = "login2"; /* Database name */ $con = mysqli_connect($host, $user, $password,$dbname); // Check connection if (!$con) { die("Connection failed: " . mysqli_connect_error()); } Então pessoal, até aqui funciona normal .
      agora a linha abaixo é oque não funciona e eu vou postar só a index e o css porque repete o de cima.
      se alguém poder me ajudar eu fico grato. desde já muito obrigado
      <html> <?php require_once"config.php"; ?> <head> <title>Formulario de login </title> <link href="css/style.css" rel="stylesheet" type="text/css" /> <script src="jquery-3.2.1.min.js" type="text/javascript"></script> <script type="text/javascript"> $(document).ready(function(){ $("#but_submit").click(function(){ var username = $("#meu_nome").val().trim(); var password = $("#minha_senha").val().trim(); if( username != "" && password != "" ){ $.ajax({ url:'pesquisar.php', type:'post', data:{username:username,password:password}, success:function(response){ var msg = ""; if(response == 1){ window.location = "home.php"; }else{ msg = "Invalid username and password!"; } $("#message").html(msg); } }); } }); }); </script> </head> <body> <form id="formulario" method="post"> <fieldset> <h2>Configuracoes da conta</h2> <h3>Area de login </h3> <input type="text" id="meu_nome"name="meu_nome" placeholder="username" /> <input type="password" id="minha_senha " name="minha_senha" placeholder="digite sua senha" /> <input type="submit" class="next acao" value="Logar" /> </fieldset> </body> </html> agora é o css
      *{margin:0; padding:0;} html{ height:100%; background: linear-gradient(rgba(38, 128, 101, 0.9), rgba(52, 177, 140, 0.9)); } .erros, .ok { width:390px; padding:5px; background:rgba(238, 249, 113, 0.9); margin: 20px auto 0 auto; border: 1px solid rgba(222,239,10,0.9); border-radius: 4px; color: #333; } .ok{background: rgba(155,222,143,0.9);border-color: rgba(68, 171, 50, 0.9);color:white;} body{ font-family: "Trebuchet MS", tahoma, arial; } #formulario{ width:500px; margin:40px auto; text-align:center; position:relative; } #formulario fieldset{ background:white; border:0 none; border-radius:5px; -moz-border-radius:5px; -webkit-border-radius:5px; box-shadow:0 0 15px 1px rgba(0,0,0, 0.4); padding:20px 30px; box-sizing: border-box; width:80%; margin:0 10%; position:absolute; } #formulario input, #formulario textarea{ padding:10px; border:1px solid rgba(38, 128, 101, 0.9); border-radius:4px; -moz-border-radius:4px; -webkit-border-radius:4px; outline:none; box-sizing: border-box; width:100%; font:14px "Trebuchet MS", tahoma, arial; color:#090; margin-bottom:10px; } #formulario .acao{ width:100px; background:rgba(38, 128, 101, 0.9); color:white; text-transform:uppercase; font-weight:bold; padding:12px 0; float:left; margin-right:5%; } #formulario .acao:hover{background:rgba(52, 177, 140, 0.9); cursor:pointer;}  
    • By odenilson marques
      Ola pessoal,  estou precisando de uma força! segue a situação.
       
      tenho 3 formulário em um projeto, sendo eles:
      form_cad_empresa
      form_cad_atividade
      form_cad_processo
       
      no form_cad_atividade e form_cad_processo tenho uma combobox que lista todas empresas cadastradas no form_cad_empresa, porém no form_cad_atividade e no form_cad_processo também tenho um link que redireciona o usuário para o form_cad_empresa para ele cadastrar a empresa caso não encontre a empresa na combobox do form_cad_atividade e form_cad_processo, porém gostaria que quando terminasse o cadastro do form_cad_empresa este teria que ser redirecionado para o form_cad_atividade ou form_cad_processo, ou seja ele retornaria para formulario que chamou o form_cad_empresa.
       
      Alguém pode me da um norte?
       
    • By eduardaarosaa
      Estou estudando Js, fiz esse exemplo abaixo porém o onlick não está chamando a função, nada acontece quando quando clico no botão.
          
      <!DOCTYPE html>
      <html lang="pt-br">
      <head>
          <meta charset="UTF-8">
          <meta name="viewport" content="width=device-width, initial-scale=1.0">
          <meta http-equiv="X-UA-Compatible" content="ie=edge">
          <title>Somando números</title>
      </head>
      <body>
          <h1>Soamando valores</h1>
          <input type="number" name="txt0" id="txt1">
          +
          <input type="number" name="txt2" id="txt3">
          <input type="button" value="somar" id="botao" onclick="somar()">
          <div id="res">
          </div>
          <script>
          
              res.addEventListener('mouseeenter', entrar);
              function somar(){
                  var n1 = window.document.querySelector("input#txt1");
                  var n2 = window.document.querySelector("input#txt3");
                  var n1 = Number(txt1.value);
                  var n2 = Number(txt3.value);
                  var soma = (n1+n2);
                  var res = window.document.getElementById("res");
          
                  res.innerHTML(`A soma é de ${soma}`);
                 
              }
              function entrar(){
                  area.style.background="red";
              }
          </script>
      </body>
      </html>
           
    • By emersongo
      Olá, no meu projeto tenho uma animação ao scroll, quando me aproximo do elemento ele "surge" de algum lado, porém por alguma razão somente alguns elementos do site estão funcionando 100%, outros, no inspecionar mostra que a classe ANIMATE já é adicionada no elemento assim que a página é carregada, e a mesma não é removida mesmo quando eu me aproximo e afasto do elemento.

      Fazendo alguns testes vi que quando o elemento animado está fora do pai SECTION funciona normalmente, quando está dentro não (com exceção do primeiro elemento animado do site).

      Fiz o upload do código para o JSFiddle, https://jsfiddle.net/kuxf7mep/ ,como pode ver o elemento ARTICLE na linha 101 está animado normalmente, porém os elementos HEADER da linha 147 e o MAIN da linha 152 estão com a animação mas não funcionam.

      OBS: Podem fazer o teste colocando um elemento animado dentro e fora da section.
    • By Mafernardo98
      Tenho uma tabela chamada bilhete, preciso que o usuário, ao clicar no botão que abre um modal, realize uma consulta dentro dessa tabela, essa consulta precisa pegar um id aleatório e exibir o bilhete entro do modal, algo que simule uma caixinha de bilhetes motivacionais, que pode ser retirado um bilhete por vez... Mas eu não consigo exibir os dados da consulta dentro do modal... por favor me ajudem, sou iniciante nisso
       
      Esse é meu index.php
      <?php
                          include_once "db.php";
                          $result_bilhete = "SELECT * FROM bilhete WHERE idbilhete = 4";
                          $resultado_bilhete = mysqli_query($conexao, $result_bilhete);
                          $row_bilhete = mysqli_fetch_assoc($resultado_bilhete);
                          ?>
                         <button type="button" class="btn btn-primary view_data" id="<?php echo $row_bilhete['idbilhete']; ?>"data-toggle="modal" data-target="#visulUsuarioModal">Bilhetes</button>
                          <!-- Modal -->
                          <div class="modal fade" id="visulUsuarioModal" tabindex="-1" role="dialog" arial-labelledby="Rotulo do modal">
                              <div class="modal-dialog" role="document">
                                  <div class="modal-content">
                                      <div class="modal-header">
                                          <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
                                          <h4 class="modal-title" id="titulo-modal">Bilhete Motivacional</h4>
                                      </div>
                                      <div class="modal-body">
                                          <span id="p-bilhete"></span>
                                      </div>
                                      <div class="modal-footer">
                                          <button type="button" class="btn btn-primary">Salvar Bilhete</button>
                                      </div>
                                  </div>
                              </div>
                          </div>
              <script>    
                      $(document).ready(function(){
                      $(document).on('click','.view_data', function(){
                          var idbilhete = $(this).attr("idbilhete");
                          //alert(idbilhete);
                          //Verificar se há valor na variável "idbilhete".
                          if(idbilhete !== ''){
                              var dados = {
                                  idbilhete: idbilhete
                              };
                              $.post('vizualizarBilhete.php', dados, function(retorna){
                                  //Carregar o conteúdo para o bilhete
                                  $("#p-bilhete").html(retorna);
                                  $('#visulUsuarioModal').modal('show'); 
                              });
                          }
                      });
                  });
              </script>
      Esse é meu vizualizarBilhete.php
       
      <?php
      if(isset($_POST["idbilhete"])){
          include_once "db.php";
          
          $resultado = '';
          
          $idBilhetes = rand(4, 10);
          
          $result_bilhete = "SELECT * FROM bilhete WHERE idbilhete = 4";
          $resultado_bilhete = mysqli_query($conexao, $result_bilhete);
          $row_bilhete = mysqli_fetch_assoc($resultado_bilhete);
          
          while($row_bilhete = mysqli_fetch_assoc($resultado_bilhete)){
          
          $resultado .= '<dl class="row">';
          
          $resultado .= '<dt class="col-sm-3">Bilhete</dt>';
          $resultado .= '<dd class="col-sm-9">'.$row_bilhete['bilhete'].'</dd>';
              
          $resultado .= '</dl>';
          
          echo $resultado;
          }
      }
       
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.