Ir para conteúdo

Arquivado

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

fainformatica

Multiplicar um input apartir de um select e dar o resultado em um input sem dar refresh

Recommended Posts

Entao pessoal, tenho um problema aqui... que nao conseguir resolver... queria digitar o valor em um input e selecionar os percentuais de desconto apartir de um select e levar o resultado para um input. tentei fazer assim e ainda nao deu certo, no campo resultado fica aparecendo "NaN".

<!DOCTYPE html>
<html>
<head>
	<title></title>
</head>
<body>
<script type="text/javascript">
	/* aqui inicia a função ao mudar a opção do select */ 
function checar() { 
 
/* é criado uma var para cada select */ 
campo1 = document.form.debito; 
campo2 = document.form.desconto; 
 
/* se o debito estiver com valor digitado, é multiplicado o valor dele */ 
if(campo1.value!="") { 
valor1=campo1.value; 
} else { 
valor1=""; // se não, o valor do select será vazio
} 
 
/* se o desconto estiver com valor selecionado, é multiplicado o valor dele */ 
if(campo2.value!="") { 
valor2=campo2.value; 
} else { 
valor2=""; // se não, o valor do select será vazio
} 
 
/* aqui é criado: um e dois, e feito um calculo para multiplicar */ 
um = valor1*2/2; // calculo para o debito
dois = valor2*2/2; // calculo para o ddesconto
 
/* aqui é passado para o input os valores definidos */
if(um=="" && dois=="") { 
document.form.total.value=""; // se os campos estão vazio
} else { 
document.form.total.value=um*dois; // se os campos tem algum valor
} 
 
}
</script>

<!-- abaixo segue o formulário do exemplo //--> 
<form name="form"> 
<input type="text" name="select1" onChange="checar()">
 
<select name="select2" onChange="checar()">
<option></option>
<option value="0,05">5%</option>
<option value="0,1">10%</option>
<option value="0,15">15%</option>
</select>
<input type="text" name="total" value=""> 
</form>

</body>
</html>

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
2 minutos atrás, Alaerte Gabriel disse:

Você está trabalhando com JavaScript. Notou que postou fórum de PHP ?!

 

Movido ao fórum correto. JavaScript.

 

 

 

foi mal, nem percebi. pode me ajudar ?

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
5 horas atrás, Fabio Victor disse:

NaN = not a number

 

Tem alguma parte do seu código que esta tentando calcular alguma coisa que não é um numero. Use parsint ou parsefloat para converter os valores que vem dos inputs.

 

to fazendo o calculo com porcentagem... as porcentagem fica no select. dai o input manda um valor e o select multiplica e da o resultado em um outro input. poderia me dar um exemplo de como usar essas duas opçoes que me deixou ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por marcossantana10
      Amigos, estou com o seguinte problema: quando monto meu formulário dinamicamente, ao clicar no botão submit é dado um refresh na página, ao invés de realizar o submit. Esse formulário busca todos os registros de uma dada categoria no banco de dados e os monta na página para que possam ser editados individualmente.
      Segue o código:
      //montando os formulários:
          $.each(responseJson, function(key, value){                                 var itens = "<div class='card_nbl'><div class='container_nbl'><div class='text_card_nbl update_info_consulta'><form name='updateProntuario' method='post'><label style='text-align: left;' for='prontuario'>Consulta:</label><textarea name='prontuario' class='input_full' style='resize: none; height: 100px; padding-top: 10px; margin-top: 5px;' id='prontuario'>"+value.descricao+"</textarea><label style='text-align: left;' for='info_sigilosa'>Informações sigilosas:</label><br><textarea name='info_sigilosa' class='input_full' style='resize: none; height: 100px; padding-top: 10px; margin-top: 5px;' id='info_sigilosa'>"+value.info_sigilosa+"</textarea><input type='submit' name='salvar' value='Salvar' class='btn btn_padrao'></form></div></div></div>"                                 $("#item1mobile").append(itens)                             })  
      Minha função de submit:
          $(function(){                 $('form[name=updateProntuario]').submit(function(){                     $.ajax({                         type: 'POST',                         url: 'www',                         dataType: 'json',                         data: $(this).serialize(),                         success: function(data){                             $("#loading").attr("class", "loading")                             swal_sucesso("Tudo certo!", "As informações sobre a consulta foram atualizadas.")                         }                     });                 return false;                 })             }) OBS: quando eu faço o formulário direto no HTML (sem montar vários itens com um laço, como acima), o submit funciona normalmente.
       
    • Por Alberto Nascimento
      Sempre que atualizo as informações de minha página HTML SIMPLES, preciso "apagar todo histórico e conteúdo de navegação" pois mesmo se tiver passado horas ou dias sempre é exibido o que esta no cache do navegador.
      Como consigo fazer com que a página sempre que for acessada novamente, ou após 5 minutos ela recarregue?
      Acho que seria como recarregar automaticamente.
       
      Como faço isso?
    • Por Andersonografia
      Gostaria de agradecer o topico do Tonga (topic/436039-resolvido refresh/) pois me esclareceu a criar um método prático para certificar se o form vem do botão ou do F5.
      Vou esclarecer também que só tenho essa necessidade quando o primeiro form do documento é um input, porque na maioria dos meus casos sempre é um search.  
       
      No Value do botão eu coloco o time:
      <button type="submit" name="carga" class="button" value="<?PHP echo $time;?>"> Coloco a condição se estiver setado e se for diferente da sessão:
      if(isset($_POST['carga'])) { $compara = ($_POST['carga']); if($compara != $_SESSION['compara']) { E depois do insert, ainda dentro da condição eu gravo a variável na sessão:
      $_SESSION['compara'] = $compara; Obrigado mais uma vez ao Tonga e ao Forum. Se alguém souber de um método mais prático, por gentileza será muito útil divulgar!!!!
    • Por ghlevin
      Estou precisando fazer um refresh automático em algumas páginas do site de um cliente. Porém, esse refresh precisa acontecer apenas UMA vez.
      Eu sei que daria pra eu colocar a meta tag abaixo, por exemplo:
      <meta content="3;url=http://www.meusite.com.br/index.php" http-equiv="Refresh" /> Mas aí ela atualizaria sempre a cada 3 segundos. E eu queria que atualizasse só uma vez. Como dá pra fazer isso? Com uso de SESSION, COOKIE ou alguma outra coisa?
    • Por PeeWee
      Boa noite pessoal, preciso fazer com que seja carregado somente a informação dentro de uma determinada div, pois ela deve atualizar quando for alterada a informação no BD. Carregar a pagina inteira a cada 5 segundos seria ruim pois provavelmente o usuário estranharia, fiz da seguinte forma, conforme os prints.
       
      Deu certo, porém a informação foi alterada a  partir da alteração feita no banco de dados, porém, dentro da div, apareceu outra página igual, gerando duplicidade sobreposta.
      Aguardo sugestões.


×

Informação importante

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