Ir ao conteúdo
  • Cadastre-se

Erro no Auto complete


Rodrigo Felipe

Posts recomendados

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 ??

Link para o comentário
Compartilhar em outros sites

  • Moderador

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
});

});

Link para o comentário
Compartilhar em outros sites

Arquivado

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

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades 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

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!