Ir para conteúdo

POWERED BY:

Arquivado

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

drk7

Lista c/ radio buttons usando AJAX

Recommended Posts

Oi. Estou aqui com uma lista com radio buttons que busca dados no banco de dados, ao se clicar em algum radio button. Cada opção seleciona uma coisa.

Como eu faria p/ usar essa mesma lista com AJAX, s/ ter que dar refresh na página? Estou olhando algumas coisas de Ajax, mas ainda to meio perdido.

Se puderem me dar uma mão agradeço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

tera de criar duas paginas a que contera o html e o ajax e uma que fara a pesquisa no banco dados.

 

na pagina que contem ajax basta você criar a funcao do ajax e no radio button colocar o seguinte

 

... onclick="funcaoajax(this.value)">

Compartilhar este post


Link para o post
Compartilhar em outros sites

tera de criar duas paginas a que contera o html e o ajax e uma que fara a pesquisa no banco dados.

 

na pagina que contem ajax basta você criar a funcao do ajax e no radio button colocar o seguinte

 

... onclick="funcaoajax(this.value)">

Na verdade isso já tá feito. O que eu pedi ajuda exatamente com no caso a função ajax. Já tá funcional, só que eu queria usar AJAX p/ não dar refresh na pagina.

Compartilhar este post


Link para o post
Compartilhar em outros sites

<script type="text/javascript">

/// AJAX

function ajaxInit() {

var req;

try {

req = new ActiveXObject("Microsoft.XMLHTTP");

} catch(e) {

try {

req = new ActiveXObject("Msxml2.XMLHTTP");

} catch(ex) {

try {

req = new XMLHttpRequest();

} catch(exc) {

alert("Esse browser não suporta Ajax");

req = null;

}

}

}

return req;

}

function sendRequest(valor){

pagina="a sua pagina.asp ou php"

ajax = ajaxInit();

ajax.open("GET",pagina+"?valor="+valor, true);

ajax.onreadystatechange=function() {

if (ajax.readyState==1){

document.getElementById("load").innerHTML = "a carregar...";

document.getElementById("captch").innerHTML = "";

}

if ((ajax.readyState==4) && (ajax.status==200)){

document.getElementById("load").innerHTML = "";

document.getElementById("captch").innerHTML = ajax.responseText;

}

}

ajax.send(null);

}

</script>

 

......

no body

 

cada input radio tera

 

<input type="radio" value="ovalor" onclick="sendRequest(this.value)" />

 

 

....................

 

pagina asp ou php

 

 

tem de pegar o parametro e fazer a busca

 

 

asp

 

valor=Request.Querystring("valor")

..

consulta

...

escrever resultado

 

 

php

 

$valor=$_GET["valor"];

...

consulta

....

escrever resultado

Compartilhar este post


Link para o post
Compartilhar em outros sites

<script type="text/javascript">

/// AJAX

function ajaxInit() {

var req;

try {

req = new ActiveXObject("Microsoft.XMLHTTP");

} catch(e) {

try {

req = new ActiveXObject("Msxml2.XMLHTTP");

} catch(ex) {

try {

req = new XMLHttpRequest();

} catch(exc) {

alert("Esse browser não suporta Ajax");

req = null;

}

}

}

return req;

}

function sendRequest(valor){

pagina="a sua pagina.asp ou php"

ajax = ajaxInit();

ajax.open("GET",pagina+"?valor="+valor, true);

ajax.onreadystatechange=function() {

if (ajax.readyState==1){

document.getElementById("load").innerHTML = "a carregar...";

document.getElementById("captch").innerHTML = "";

}

if ((ajax.readyState==4) && (ajax.status==200)){

document.getElementById("load").innerHTML = "";

document.getElementById("captch").innerHTML = ajax.responseText;

}

}

ajax.send(null);

}

</script>

 

......

no body

 

cada input radio tera

 

<input type="radio" value="ovalor" onclick="sendRequest(this.value)" />

 

 

....................

 

pagina asp ou php

 

 

tem de pegar o parametro e fazer a busca

 

 

asp

 

valor=Request.Querystring("valor")

..

consulta

...

escrever resultado

 

 

php

 

$valor=$_GET["valor"];

...

consulta

....

escrever resultado

Coloquei esse código lá mas não consegui fazer funcionar. No IE aparece que a página contém erros no cantinho na esquerda. No FF tranca tudo, não p/ clicar em mais link nenhum.

Algumas dúvidas?

1- Eu estou usando POST no submit. Tem problema? A maioria dos códigos que eu vi (na verdade todos) usavam GET.

2- Tem como me explicar esse pedaço?

ajax.onreadystatechange=function() {
					if (ajax.readyState==1){
						document.getElementById("radio_list_pac").innerHTML = "a carregar...";
						document.getElementById("radio_list_pac").innerHTML = "";
					}
					if ((ajax.readyState==4) && (ajax.status==200)){
						document.getElementById("radio_list_pac").innerHTML = "";
						document.getElementById("radio_list_pac").innerHTML = ajax.responseText;
					}
				}
3- Esse pedaço
//ajax.open("GET",pagina+"?valor="+valor, true);
no"GET" é o método que tá no Submit ($_POST ou $_GET)?

Ah, eu uso php.

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.