Os materiais didáticos aqui disponibilizados estão licenciados através de Creative Commons Atribuição-SemDerivações-SemDerivados CC BY-NC-ND. Você possui a permissão para visualizar e compartilhar, desde que atribua os créditos do autor. Não poderá alterá-los e nem utilizá-los para fins comerciais.
Atribuição-SemDerivações-SemDerivados
CC BY-NC-ND
Cursos / Informática para Internet / Desenvolvimento Web II / Aula
Antes de apresentar os detalhes da programação AJAX serão apresentados dois exemplos simples que visam tornar claro as diferenças e vantagens do novo modelo proposto. O primeiro exemplo utiliza os meios tradicionais: dados sendo submetidos para o servidor utilizando um formulário. O segundo é basicamente a reconstrução de parte do primeiro utilizando AJAX.
Como pode ser observado nas Figuras 3 e 4, esse exemplo é composto por uma página com apenas duas listas HTML. A primeira, contendo categorias pré-definidas de livros e a segunda contendo os respectivos livros da categoria selecionada.
A seguir veremos um exemplo de requisição AJAX envolvendo Livros e Categorias, onde são trocados dados entre o navegador e o servidor desde a primeira requisição para obter a página da Figura 3 até o segundo momento após o usuário clicar em uma categoria e disparar uma nova requisição para recuperar os respectivos livros (Figura 4).
Requisição (para obter a página da Figura 3):
A seguinte requisição é feita no servidor (ex: digitando-se a URL no navegador) para acessar a página inicial:
http://localhost:8080/AulasAjax1/Controlador
A resposta retornada é a página HTML descrita na Listagem 1.
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Modelo Padrão</title>
</head>
<body>
<form action="/AulasAjax1/Controlador">
<p>
<select name="categoria" size="5" onchange="submit()">
<option value="ficcao">ficcao</option>
<option value="nao-ficcao">nao-ficcao</option>
<option value="informatica">informatica</option>
<option value="auto-ajuda">auto-ajuda</option>
</select>
<select name="livro" size="5" style="width: 200px;">
</select>
</p>
</form>
</body>
</html>
Requisição (para obter a página da Figura 4):
Ao clicar em uma das categorias listadas, a seguinte requisição é feita no servidor:
http://localhost:8080/AulasAjax1/Controlador?categoria=auto-ajuda
Resposta:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Modelo Padrão</title>
</head>
<body>
<form action="/AulasAjax1/Controlador">
<p>
<select name="categoria" size="5" onchange="submit()">
<option value="ficcao">ficcao</option>
<option value="nao-ficcao">nao-ficcao</option>
<option value="informatica">informatica</option>
<option value="auto-ajuda">auto-ajuda</option>
</select>
<select name="livro" size="5" style="width: 200px;">
<option value="O que se passa na cabeÁa dos cachorros">O que
se passa na cabeÁa dos cachorros</option>
<option value="Transformando suor em ouro">Transformando suor
em ouro</option>
<option value="O monge e o executivo">O monge e o executivo</option>
<option value="O verdadeiro poder">O verdadeiro poder</option>
<option value="Qual È a tua obra? - Inquietacoes propositivas">Qual
È a tua obra? - Inquietacoes propositivas</option>
<option value="Fora de serie- Outliers">Fora de serie-
Outliers</option>
<option value="O futuro hoje">O futuro hoje</option>
<option value="PMBOK - Guia do conjunto de conhecimentos">PMBOK
- Guia do conjunto de conhecimentos</option>
<option value="Os 7 h·bitos das pessoas altamente eficazes">Os
7 h·bitos das pessoas altamente eficazes</option>
<option value="Faça como Steve Jobs">Faça como Steve Jobs</option>
</select>
</p>
</form>
</body>
</html>
Versão 5.3 - Todos os Direitos reservados