Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá Pessoal!
Bom dia.
Pelo post anterior eu estava tentando fazer uma busca dinãmica com ajax e depois de quebrar bastante a cabeça eu consegui adaptar ao que eu queria.
A busca consiste em digitar um código e aparecer o nome da pessoa.
Só que dessa vez existem 7 campos na mesma página que fazem o mesmo tipo de busca e é inviável criar um arquivo de ajax para cada um.
Qual foi minha idéia...a partir dessa função...:
<script src="funcoes/_ajax_busca_destaques.js"></script>
<script>
function pesquisa_destaque(valor)
{
//FUNÇÃO QUE MONTA A URL E CHAMA A FUNÇÃO AJAX
url="textos_buscar_destaque.php?valor="+valor;
ajax(url);
}
</script>
//CÓDIGO DO ARQUIVO _ajax_busca_destaques.js
function ajax(url)
{
req = null;
// Procura por um objeto nativo (Mozilla/Safari)
if (window.XMLHttpRequest) {
req = new XMLHttpRequest();
req.onreadystatechange = processReqChange;
req.open("GET",url,true);
req.send(null);
// Procura por uma versão ActiveX (IE)
} else if (window.ActiveXObject) {
req = new ActiveXObject("Microsoft.XMLHTTP");
if (req) {
req.onreadystatechange = processReqChange;
req.open("GET",url,true);
req.send();
}
}
}
function processReqChange()// apenas quando o estado for "completado"
if (req.readyState == 4) {
// apenas se o servidor retornar "OK"
if (req.status == 200) {
document.getElementById('lblDestaque1').innerHTML = req.responseText;
} else {
alert("Houve um problema ao obter os dados:" + req.statusText);
}
}
}
...eu pretendo passar como parâmetro o nome do campo que fez a solicitação!
A partir disso fazer uma estrutura de condição para direcionar o conteúdo retornado pela requisição para o respectivo label do campo!
Tenho tudo isso na teoria, porém na prática... =)
A única coisa que ainda não consegui descobrir é a forma de pegar o nome do campo que faz a requisição!
Código HTML:
//CAMPO QUE FAZ A REQUISIÇÃO
<input name="idDestaque1" id="idDestaque1" type="text" [u]onblur="pesquisa_destaque(this.value)"[/u] value="<?php echo $idDestaque1?>" size="2" onkeydown="mascara(this,soNumeros)"/>
//CAMPO QUE RECEBE O VALOR RETORNADO
<td class="tdLabelMed" rowspan="2">Título do Imóvel:</td>
<td class="tdField"><label id="lblTitulo1"><?php echo $Titulo1;?></label></td>
Quem souber como ajudar...
Desde ja agradecido!
Abraço a todos
Carregando comentários...