Ir para conteúdo

Arquivado

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

ckcesar

Chamar função no javascript

Recommended Posts

Bom galera minha dúvida é, eu tenho um input que recebe um valor pelo javascript, mais ao receber esse valor eu quero disparar uma nova função através desse input sem clicar em nada, tem que chamar a função automática.

 

Segue meu código:

<!DOCTYPE html>
<html >
<head>
    <script type="application/javascript" src="jquery.min.js"></script>
    <script type="application/javascript">
         function teste() {
             $('#fname').focus();
             $('#fname').val('clicou');
         }
         function myFunction() {
            alert($('#fname').val());
         }
   </script>
</head>
<body>
<input type="text" id="fname" onkeypress="myFunction()">
<input type="button" onclick="teste();" />
</body>
</html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá César,

 

A função Val do jQuery não dispara o evento Change, infelizmente. Então ... uma forma simples de fazer isto é comparando os valores na execução da função, assim:

    function teste(novo_valor) {
      var antigo = $('#fname').val(); //pega valor anterior
      $('#fname').val(novo_valor); // seta novo valor
      var novo = $('#fname').val(); // pega valor atual
      if(antigo !== novo) { // verifica se houve mudanças
        myFunction(); // caso sim, chama função destino
      }
    }

    function myFunction() { //função destino
      alert($('#fname').val());
    }

  <input type="text" id="fname">
  <input type="button" onclick="teste('Novo Valor Clicado');" value="Novo Valor" />

Espero que te ajude.

 

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.