Pesquisar na Comunidade
Mostrando resultados para as tags ''imput''.
Encontrado 1 registro
-
Ola, Tenho um formulário em abas onde cadastro dados dos alunos e mando para o banco de dados. <div role="tabpanel" class="tab-pane" id="avaliacao"> <div style="padding-top:20px;"> <form class="form-horizontal" action="" method="POST"> <div class="form-row"> <div class="form-group col-md-2"> <label for="peso">Peso</label> <input type="text" name='peso' class="form-control" id="peso" placeholder="Peso"> </div> <div class="form-group col-md-2"> <label for="altura">Altura</label> <input type="text" name='altura' class="form-control" id="altura" placeholder="Altura em metros"> </div> <div class="form-group col-md-2"> <label for="imc">IMC</label> <input type="text" name='imc' class="form-control" id="imc" placeholder="IMC"> </div> <div class="form-group col-md-2"> <label for="rcq">Relação Cintura Quadril</label> <input type="text" name='rcq' class="form-control" id="rcq" placeholder="RCQ"> </div> </div> </div> </div> O que gostaria de fazer é que ao digitar os dois primeiros, Peso e Altura, o campo IMC fosse preenchido automaticamente com o resultado (número inteiro) A fórmula para o calculo seria: Peso / altura x altura * Leia-se: peso dividido pela altura ao quadro Mas sinceramente entendo pouco de javascript, alguém pode me dar uma força? Tenho um script que peguei na internet que consigo fazer as operações matemáticas, mas não sei como alterar para realizar a operação acima. E preciso que não mostre as casas após a virgula, como neste script abaixo. <script type="text/javascript"> function id(el) { return document.getElementById( el ); } function metros_perc( un, cooper ) { return parseFloat(un.replace(',', '.'), 10) * parseFloat(cooper.replace(',', '.'), 10); } window.onload = function() { id('mquadra').addEventListener('keyup', function() { var result = metros_perc( this.value , id('cooper').value ); id('metros_perc').value = String(result.toFixed(2)).formatMoney(); }); id('cooper').addEventListener('keyup', function(){ var result = metros_perc( id('mquadra').value , this.value ); id('metros_perc').value = String(result.toFixed(2)).formatMoney(); }); } String.prototype.formatMoney = function() { var v = this; if(v.indexOf('.') === -1) { v = v.replace(/([\d]+)/, "$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>