Ir ao conteúdo
  • Cadastre-se
Rodrigo Felipe

Erro no Auto complete

Recommended Posts

Boa tarde galera..

To canelando aqui num item simples de um formulário meu, se alguém puder ajudar..

É o seguinte, to criando um campo auto complete que busca o nome de usuarios cadastrados no banco, o estranho é que ele não busca todos os nomes, ate mesmo quando eu digitando o nome correto do usuário. porém isso acontece apenas com alguns nomes... segue o codigo para verificação..

E detalhe, se alguém souber como faço isso, de outra maneira.. uma vez que com o jquery na versão não é mais possível porque o autocomplete foi removido da API.. Eu agradeço!!

Index.php

 
<!DOCTYPE HTML>
<html>
<head>
<title>Form</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.min.js"></script>
<script type='text/javascript' src="js/jquery.autocomplete.js"></script>
<script type="text/javascript" src="js/script.js"></script>
<link rel="stylesheet" type="text/css" href="js/jquery.autocomplete.css" />
</head>
<body>
<form action="" method="post">
<label>Codigo: <input type="text" name="solicitante" id="solicitante"/></label>
<label>Codigo: <input name="codigo" type="text" disabled="disabled" value="" /></label>
<label>Departamento: <input type="text" disabled="disabled" name="Departamento" value="" /></label>
<input type="button" value="Veficar">
</form>
</body>
</html>

Script.js


$(document).ready(function(){
//Função para preencher os demais campos apastir do nome do usuario
$("input[name='solicitante']").focus(function(){
var codigo = $("input[name='codigo']");
var Departamento = $("input[name='Departamento']");

$( codigo ).val('Carregando...');
$( Departamento ).val('Carregando...');

$.getJSON(
'js/function.php',
{ nome: $( this ).val() },
function( json )
{
$( codigo ).val( json.codigo );
$( Departamento ).val( json.Departamento );
}
);
});
//Aqui esta a funçaõ que faz o auto complete
$("#solicitante").autocomplete("js/autoComplete.php", {
width: 260,
matchContains: true,
//mustMatch: true,
//minChars: 0,
//multiple: true,
//highlight: false,
//multipleSeparator: ",",
selectFirst: false
});
});

Autocomplete.php


include("../conexao/conexao.php");
$q = mysql_real_escape_string($_GET["q"]);
if (!$q) return;

$rsd = mysql_query("SELECT nom_solicitante FROM solicitante WHERE nom_solicitante LIKE '%$q%'") or die(mysql_error());
while($rs = mysql_fetch_array($rsd)){
$cname = $rs['nom_solicitante'];
echo "$cname\n";

Alguem ??

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá,

veja que você só colocou a chamada da função ali mas.. de fato ela não está sendo requisitada..

é preciso um evento por exemplo click, keyup

eu faria desta forma:


$(#solicitante).keyup(function(){
//Aqui esta a funçaõ que faz o auto complete
$("#solicitante").autocomplete("js/autoComplete.php", {
width: 260,
matchContains: true,
//mustMatch: true,
//minChars: 0,
//multiple: true,
//highlight: false,
//multipleSeparator: ",",
selectFirst: false
});

});

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×