Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

betobto

Desconto

Recommended Posts

Olá como faço para usar uma regra de nao deixar o vendedor dar mais de 5% de desconto no produto.

 

usando um alert, ele preenche um input se colocar 6% e atualizar exibe uma mensagem dizendo q nao pode ser aplicado mais de 5%

Compartilhar este post


Link para o post
Compartilhar em outros sites

HTML

<input onblur="checaDesconto(this)" type="text" name="desconto" /> 

JS

checaDesconto(e) {
    if(e.value>5)
        alert('O valor do desconto não pode ser maior que 5%');
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa tarde, Galera.

 

Beto a ideia do Rafael vai funcionar. Mas é importante lembrar que não é uma boa ideia misturar as camadas, HTML, CSS e JavaScript.

 

Responsabilidade do HTML:

  • Conteúdo;
  • Marcação(tag);
  • Semântica;
  • Estrutura(HTML5).

Responsabilidade do CSS:

  • Visual;
  • Animação(CSS3). *Sim animação visual, mas só começou a ter no CSS3

Responsabilidade do JavaScript:

  • Interação;
  • Comportamento.

Sendo assim, eu deixaria o código mais o menos da seguinte maneira:

 

HTML

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>Exemplo de Evento</title>
    </heade>
    <body>
        <form class="form" action="desconto.php" method="post">
            <label>Desconto
                <input class="form-desconto" type="number" name="desconto">
            </label>

            <input type="submit">
        </form>

        <script src="js/main.js"></script>
    </body>
</html>

JavaScript

var $formDesconto = document.querySelector('form-desconto');

//Será executado o código abaixo quando o usuário entrar(input) com um caracter no input que tem a classe form-desconto
$formDesconto.addEventListener('input', function (event) {
    var regex = /\D/gi; //Expressão regular que verificar se não é digito

    this.value = this.value.replace(regex, ""); //O que não for digito é substituído por nada

    if(this.value > 5) {
        alert('O valor de desconto não pode ser maior do que 5%.');
    }
});

Qualquer dúvida só falar Beto.

 

[]'s

Marco Bruno.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.