Ir para conteúdo

POWERED BY:

Arquivado

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

Alexandro Zaleski

[Resolvido] Salvar ID do Jquery autocomplete

Recommended Posts

Bom dia pessoal..

Depois de resolver o problema de acentuação do jquery autocomplete.. eu não estou conseguindo salvar o ID do campo selecionado.

Quando eu Seleciono RS por exemplo.. ao invéz de ser salvo o ID (23) ele salva o RS mesmo..e eu preciso salvar o ID do campo.. vou postar o códigopara vocês darem uma olhada novamente..

complete.js

$(document).ready(function() {
    $("#pes_uf").autocomplete("../auto/estados.php", {
        width: 260,
        selectFirst: true
    });
});

estados.php

<?php
include_once('../inc/config.php');
include_once('../inc/funcoes.php');

$q = strtolower($_GET['q']);
if (!$q) return;

$sql = "SELECT * FROM estados WHERE est_sigla LIKE ('%$q%') ORDER BY est_sigla ASC";
$res = mysql_query($sql);

while($linha = mysql_fetch_array($res)){
	if (strpos(strtolower($linha['est_sigla']), $q) !== false) {
		$id = $linha['idestados'];
		$sigla = utf8_encode($linha['est_sigla']);
		echo $sigla . "|" . $id;
		echo "\n";	
	}
}
?>

o meu input está assim

 

<input type="text" name="pes_uf" id="pes_uf" value="{$dados.pes_uf}" class="campo width30" />

Alguém tem alguma idéia?? grato novamente..

Compartilhar este post


Link para o post
Compartilhar em outros sites

Poxa...mais um problema resolvido sem a solução postada. Estou com o mesmo problema, preciso que apareça o nome mas que salve o ID exatamente como o amigo aí de cima. Será que alguém conseguiu resolver?

Grata.

Compartilhar este post


Link para o post
Compartilhar em outros sites

opa.. me desculpe por não ter colocado a solução..

mas vamos lá.

 

No Smarty (eu fiz com smarty)

<p>
    <input type="text" name="pes_tipo_logradouros" id="pes_tipo_logradouros" value="{$dados.pes_tipo_logradouro}" class="campo width200" />
</p>
<p>
    <input type="hidden" name="pes_tipo_logradouro" />
</p>
no JS

$(document).ready(function() {
	$("#pes_tipo_logradouros").autocomplete("tipos.php", {
		width: 260,
		selectFirst: true
	});
	$("#pes_tipo_logradouros").result(function(event, data, formatted) {
		if (data)
			$(this).parent().next().find("input").val(data[1]);
	});
});
no PHP

<?php
include_once('conexao.php');

$q = strtolower($_GET['q']);
if (!$q) return;

$sql = "SELECT * FROM tipo_logradouro WHERE tip_log_nome LIKE ('$q%')";
$res = mysql_query($sql);

while($linha = mysql_fetch_array($res)){
	if (strpos(strtolower($linha['tip_log_nome']), $q) !== false) {
		$id = $linha['idtipo_logradouro'];
		$tipo = utf8_encode($linha['tip_log_nome']);
		echo $tipo . "|" . $id;
		echo "\n";	
	}
}
?>

Acho que é isso..

Se precisar de maisa alguma coisa.. me avise.. Ah.. o segredo está no <p></p> lá em cima no html..

Valeu

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.