Controlar/Editar/Ordenar um listbox(select) com Javascript
January 4, 2008 7:05 amAntes de iniciar para quem não sabe o que é um listbox e como usa-lo no html:
listbox em HTML pode ser feito usando a tag <select>, definindo o atributo size
Exemplo:
<select name="teste" size="10"> </select>
O exemplo acima abrira uma lista mostrando até 10 itens, mas não limitando o select a isso, essa é apenas a limitação da área visível.
No exemplo que deixo no final do artigo verão melhor como funciona.
Onde posso aplicar isso?
Pode ser usado em qualquer lugar onde você usaria checkbox, ou seja, onde precisa de múltiplas escolhas.
Eu considero o checkbox mais vantajoso e acessível, uma vez que usar o listbox da forma que mostrarei depende de JS.
Porém algumas vezes por imposição de outras pessoas precisamos trabalhar com isso e pra não entrar no campo da hipocrisia vou deixar minha ajudinha por aqui também
Mas deixo claro, tendo opções, usem checkbox!
O exemplo vocês podem ja ir dando uma olhada aqui:
Ali também disponibilizo o código para download ![]()
Comentando um pouco mais sobre o exemplo. Ele possui 2 funcoes em javascript; uma para mover os elementos de um listbox/select para o outro, e outra para ordenar o select.
A função para ordenar pode ser usado em qualquer campo select tranquilamente, mesmo que não seja aberto.
Para ordernar basta usar:
ordenarLista("nome_do_select");
Onde o “nome_do_select” tem que ser o caminho completo do objeto do formulário, um exemplo:
var nome_do_select = document.form.nome_select; ordenarLista(nome_do_select);
Para mover/controlar elementos de uma lista para a outra basta usar o seguinte:
move("nome_form","nome_do_select1","nome_do_select2");
Neste caso basta inserir o nome(name) de cada campo, entre aspas e o script faz o resto.
O select1 não importa se esta a direita a esquerda, abaixo ou acima, seja sempre o que esta cedendo um elemento, e o select2 é o receptor.
Logo coloquem no lugar do “nome_do_select1″ sempre que perde elementos e no “nome_do_select2″ quem recebe ![]()
Bom é isso por enquanto, duvidas, criticas como sempre, bem vindas, espero nos próximos dias começar a responder alguns emails que me enviaram, antes tarde do que nunca certo ;D






Não me faça pensar
Ipod
Monitor LCD
Notebook
Celular
3 Comentários para “Controlar/Editar/Ordenar um listbox(select) com Javascript”
Tem um selinho? posso colocar no meu blog?
Bom dia! Ótima função essa - está quase encaixando no que preciso aqui, porém estou com um problema que deve ser meio estúpido:
Tirei a função ordenar, já que estou utilizando o listbox pra criar uam sequência que o usuário desejar. Mas como eu faço para a página de destino receber os valores do segundo listbox, já que nenhum estará selecionado? (não sei se soube explicar direito)
Abraços!
Muito bom!
Todos os outros que tinha tentado até hoje faziam referência por “this.document.getElementById()”, dai o FF dava mensagem de undefined.
Tive dificuldades para achar algum script desse tipo que funcionasse (FINALMENTE) no Firefox.
Show de bola veio.
Comenta ae..