Jump to content


Photo

Problemas com onchange e jQuery

jquery onchange função

  • Faça o login para participar
Nenhuma resposta neste tópico

#1 gabriel159

gabriel159

    Novato no fórum

  • Usuários
  • 2 posts
  • Sexo:Masculino
  • Localidade:Gravatal

Posted 07/09/2017, 15:30

Olá, vou ser bem direto e rápido para não complicar muito,

 

Eu tenho um form (vou resumi-lo para poupar tempo) com um capo "email", esse campo terá um evento onchange ligada á função "valida_email(this.value)". Essa função irá verificar no bd se há algum email igual cadastrado. Ele irá alterar o input do e-mail de acordo com o resultado obtido.

 

Obs: na primeira verificação tudo ocorre normalmente, porém quando eu altero o input ele não funciona mais. Tenho certeza que é por conta dessa alteração que ele deixa de funcionar.  :shit:

 

Segue abaixo os seguintes trechos de código:

<form>
<div id='div_email1'>
		<div class="form-group">
			<label for="email1">E-mail:</label> 
<input type="text" class="form-control" id="email1" maxlength='64' onchange="valida_email(this.value)">
		</div>
<div id="resultado_email1"></div>
</div>
</form>

Código JS:

function valida_email(valor){

	if(valor != ''){
		var dados = {
				palavra:valor
		}
		
		$.ajax ({
			beforeSend: function(){
				$("#resultado_email1").html("<img src='./img/carregando.gif' height='20' width='20'>");
			}
		});
		
	$.post('./busca.php',dados,function(retorna){
		//mostra o resultado obtido
		
		//altera o input de acordo com o resultado obtido
		$("#div_email1").html(retorna);
	
	});
}else{
	$("#resultado_email1").html('');
}
}

Aqui eu simplesmente pego o valor do input e envio para o busca.php para verificar no BD.

<?php
//incluir a conexao com o banco de dados
include_once './bd/arquivo_conexao.php';

//recuperar o valor da palavra
$email = $_POST['palavra'];

//pesquisar no banco de dados
$sql = "select email from usuario where upper(email) = upper('$email')";
$resultado = pg_query($sql);
$n_resultados = pg_num_rows($resultado);

if($n_resultados == 0){
    
    echo "<div class='form-group has-success has-feedback'> <label for='email1'>E-mail:</label> <input type='text' class='form-control' id='email1' maxlength='64' onchange='valida_email(this.value)' value='".$email."'> <span class='glyphicon glyphicon-ok form-control-feedback'></span> </div>";
    
    }
?>

E aqui eu faço oque bem entender de acordo com o resultado obtido. Esse "echo" na parte final do código é a variavel "retorna" que eu utilizo na minha função javascript.

 

Desde já agradeço.  (ok2)






0 user(s) are reading this topic

0 membro(s), 0 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq