novidades, artigos e tudo mais!
"Combo carrega combo" usando o Spry
Pra quem não conhece, o Spry é um framework Ajax. O que diferencia o Spry de outros frameworks é o seguinte: ele possui uma própria marcação no código HTML para a execução dos scripts, não necessita de grandes conhecimentos de JavaScript para usá-lo e ele já vem integrado no Dreamweaver.
Para quem não utiliza o Dreamweaver, pode baixar o framework no site da Adobe. Será necessário também que você faça download dessa pasta que contém todos os XML que precisaremos para este tutorial.
Nesse artigo ensinarei a criar um “Combo carrega combo” usando o Spry. Veja o exemplo aqui. Para isso usarei o típico seletor de Estado/Cidade. Basicamente a nossa lógica será a seguinte:
- Existe um XML chamado “estados.xml” esse arquivo contém um parâmetro chamado <url> que indica qual é o XML das cidades daquele estado. Exemplo:
Acre
AC
01
AC.xml
Assim poderemos chamar as cidades daquele estado. Criemos primeiramente nosso arquivo HTML. Teremos que definir qual será a nossa fonte de dados, ou seja, nossos dataSets. O início do HTML deve ser:
Perceba que no código javascript temos isso:
var dsEstados = new Spry.Data.XMLDataSet("dados/estados.xml", "estados/estado");
var dsCidades = new Spry.Data.XMLDataSet("dados/{dsEstados::url}", "state/cidades/cidade");
O parâmetro {dsEstados::url} fará com que o javascript pegue o item url no arquivo XML estados.xml do estado selecionado. Também é necessário que os arquivos xpath.js e SpryData.js estejam na pasta indicada
Após isso, faremos que quando a pessoa selecione um estado, o combo da cidade fique desabilitado e assim seja carregado o XML com todas as cidades do estado selecionado. Veja o código do formulário abaixo:
Selecione um estado e uma cidade abaixo:
Vejam que os atributos {name} e {uf} fazem referência aos itens encontrados nos XML das cidades. O próprio Spry possui uma estrutura condicional para manter a interligação entre os combos.
Vocês podem fazer download dos arquivos utilizados por esse tutorial logo abaixo. E qualquer dúvida é só perguntar!
Arquivos necessários:
Ou aqui
| Imprimir artigo | Este artigo foi escrito por Gabriela em 15 de fevereiro de 2009 às 14:43, e está arquivado em Ajax. Siga quaisquer respostas a este artigo através do RSS 2.0. Você pode deixar uma resposta ou fazer um trackback do seu próprio site. |
há 1 ano atrás
Nao sei onde eu clico, para baixar os arquivos. Clikei em Share/Save, fui redirecionado pra outra pagina, mas nao tem nenhum botao de download
há 1 ano atrás
Ao final do post, há uma caixa em flash com os arquivos que você precisa.
há 1 ano atrás
Po, nao vejo flash nehum no final do arquivo. Se voce pudesse me pasar os arquivos agradeceria.
há 1 ano atrás
Provavelmente deve ser algum problema no seu navegador pra reconhecer o flash, mas embaixo no final do post eu atualizei e disponibilizei os arquivos.
há 1 ano atrás
O problema realmente pode ser do meu firefox.
Os .zip e .rar eu consegui ver.
Muito obrigado.
O post tambem esta muito bom.
ps: continue postando coisas sobre spry.
há 9 meses atrás
Gabriela,
Parabéns pelo post.
A solução é funcional e eficiente. Não pesa no processamento e ainda consigo sincronizar o xml com o meu banco.
Obrigado novamente.
há 9 meses atrás
Olá, obrigada pelo seu comentário, onde você usou tá no ar? Se tiver posta aqui para eu ver!
Até.