Seguinte, consegui fazer um comboBox muito legal, que é o seguinte: dois <select> do tipo multiple, sendo um com vários itens e outro vazio, dois botões embaixo para poder transitar itens de um select para outro. Fiz tranquilo, tá funcionando perfeitamente, mas não estou conseguindo pegar os post´s do segundo <select>, que são os meus itens selecionados.
Vô postar o script para vocês verem:
Formulário com os Select´s
<form name="frmForm" id="frmForm" action="" method="post" enctype="multipart/form-data"> <select multiple="multiple" name="clientes" id="clientes" style="width:150px; height:130px;" onKeyDown="if(event.keyCode==39) adicionaItens(); if(event.keyCode==13) event.keyCode=9;"> <option value="1">Maria</option> <option value="2">Jõao</option> <option value="3">Antônio</option> <option value="4">Francisco</option> <option value="5">Julia</option> <option value="6">Emerson</option> <option value="7">Ana</option> <option value="8">Lilian</option> <option value="9">Micaela</option> <option value="10">Hotelário</option> </select> <select multiple="multiple" name="selecionados" id="selecionados" style="width:150px; height:130px;" onKeyDown="if(event.keyCode==37) removeItens(); if(event.keyCode==13) event.keyCode=9;"></select><br /> <input type="button" name="btnDireita" id="btnDireita" value="-->" onClick="adicionaItens()" /> <input type="button" name="btnEsquerda" id="btnEsquerda" value="<--" onClick="removeItens()" /><br /><br /> </form>
Código Javascript
<script type="text/javascript"> function adicionaItens() { var form = document.frmForm; var fl = form.clientes.length -1; var au = form.selecionados.length -1; var deptos1 = "x"; //build array of assiged users for (au; au > -1; au--) { deptos1 = deptos1 + "," + form.selecionados.options[au].value + "," } //Pull selected resources and add them to list for (fl; fl > -1; fl--) { if (form.clientes.options[fl].selected && deptos1.indexOf( "," + form.clientes.options[fl].value + "," ) == -1) { t = form.selecionados.length opt = new Option( form.clientes.options[fl].text, form.clientes.options[fl].value ); form.selecionados.options[t] = opt } } } function removeItens() { var form = document.frmForm; fl = form.selecionados.length -1; for (fl; fl > -1; fl--) { if (form.selecionados.options[fl].selected) { form.selecionados.options[fl] = null; } } } </script>
Se vocês copiarem, colar e executar a página, ele vai funcionar perfeitamente ! Mas, se eu for querer enviar os meus selecionados para outra página eu não consigo, alguem me ajuda com esse script por gentileza.
Abraços !
- LarPhozyHah likes this