Ir para conteúdo

POWERED BY:

Arquivado

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

Gilberto Jr

Autocomplete JQUERY

Recommended Posts

Bom dia pessoal,



Eu estou tentando usar o pluguim autocomplete do jquery mas não estou conseguindo. Se eu usar o código abaixo funciona perfeito.


<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>jQuery UI Autocomplete - Default functionality</title>
<link rel="stylesheet" href="//code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css">
<script src="//code.jquery.com/jquery-1.10.2.js"></script>
<script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script>
<link rel="stylesheet" href="/resources/demos/style.css">
<script>
$(function() {
var availableTags = [
"ActionScript",
"AppleScript",
"Asp",
"BASIC",
"C",
"C++",
"Clojure",
"COBOL",
"ColdFusion",
"Erlang",
"Fortran",
"Groovy",
"Haskell",
"Java",
"JavaScript",
"Lisp",
"Perl",
"PHP",
"Python",
"Ruby",
"Scala",
"Scheme"
];
$( "#tags" ).autocomplete({
source: availableTags
});
});
</script>
</head>
<body>
<div class="ui-widget">
<label for="tags">Tags: </label>
<input id="tags">
</div>
</body>
</html>


Mas se eu tento usar pegando as informações do meu banco de dados não funciona. Abaixo segue o código que uso para as informações do banco de dados.


<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<%
dim conn
'Criamos o objeto de conexão
Set conn = Server.CreateObject("ADODB.Connection")

'Abrimos uma conexão com o banco de dados - [IMPORTANTE] altere os dados abaixo com as informações de sua base de dados
conn.Open("DRIVER={MySQL ODBC 5.1 Driver};SERVER=localhost;PORT=3306;DATABASE=base;USER=root;PASSWORD=123456;OPTION=3;")
'arquivo que checa se existe o login e a senha do usuario que esta tentando logar

set cliente = conn.execute("select * from tec_clientefornecedor where tipopessoa=1")
%>
<!doctype html>
<html lang="pt-br">
<head>
<meta charset="utf-8">
<title>Autocomplete JQUERY</title>
<link rel="stylesheet" href="//code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css">
<script src="//code.jquery.com/jquery-1.10.2.js"></script>
<script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script>
<link rel="stylesheet" href="https://jqueryui.com/resources/demos/style.css">
<script>
$(function() {
var availableTags = [

<%
while cliente.eof = false
%>
<%=""""&cliente("fantasia_apelido")&""",<br />"%>
<%
cliente.movenext
wend
%>
];
$( "#tags" ).autocomplete({
source: availableTags
});
});
</script>
</head>
<body>
<div class="ui-widget">
<label for="tags">Tags: </label>
<input id="tags" style="text-align:center;">
</div>
</body>
</html>
<%
conn.Close()
'Destruímos o objeto
Set conn = Nothing

%>


E dessa forma não funciona. O que eu estou fazendo de errado?



Att;


Compartilhar este post


Link para o post
Compartilhar em outros sites

Você está criando um Array no js através de um loop do asp, então a quebra de linha com o "<br>" não vai funcionar até porque também é desnecessário, bastaria:

<% Response.Write(""""&cliente("fantasia_apelido")&""""&",") %>

E para melhorar, verifique quando for o último item do loop/array para não inserir a vírgula no final.

 

Att.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Funcionou perfeito

Public2004

Agora como eu faço essa verificação para verificar o ultimo registro e não colocar virgula?

 

Att;

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não seria obrigatório neste caso, mas se quiser quebrar a linha entre os itens do array, em vez do "<br>", utilize "vbCrlf". Para remover a vírgula do último item (que parece não interferir neste caso), uma sugestão seria contar e armazenar em uma variável a quantidades de registro (desde que sua tabela tenha poucos registros para não prejudicar a performance) e depois criar um contador e a cada laço de repetição verificar se o número atual do contador é igual ao número de registros menos um (importante), quando a condição for verdadeira, mostra o resultado sem a vírgula e quebra de linha.

 

Att.

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.