o que eu quero exatamente eh o seguinte…quero uma select que seja preenchida de acordo com o valor que escolho na primeira select…por exemplo se na primeira eu escolher ‘Brasil’ na segunda serah preenchida os estados brasileiros…
tentei fazer alguma coisa com taglib.http://www.guj.com.br/forum/viewtopic.php?t=13661(ninguem respondeu!)…mas tive dois problemas:
1-toda vez que eu dou um f5 na pagina os dados dentro do select sao duplicados/triplicados…
2-quando eu escolho o valor na primeira select naum dah nada…
Atropelando estes passos você só vai se prejudicar, visto que por mais que respondamos, você acaba não entendendo.
[]s
Jair_Rillo_Junior
e ponha um título no topico um pouco mais direto com a sua dúvida
Diana
1 - Esse topico saiu errado, ele era para ser um adendo em outro…por isso ficou com esse titulo estranho…
2 - Na minha concepcao um forum eh para trocar ideias/conhecimentos…passar dicas adiante…
Quem eh retentor de codigo naum deve participar de foruns…
Hellooooooo!!! :shock:
Acho que ninguem em sa conciencia vai simplesmente jogar as instrucoes na tela e ficar rezando para que funcionem, naum eh…
Sinceramente…Eu postei a duvida(sim, pq se surgiu eh pq eu tive que estudar muuuuuito para produzir algo e dar errado,soh dah errado se vc tenta fazer,),quem quiser dar um toque fica a vontade…quem naum quiser naum dah…DEMOCRACIA…
[]'s
urubatan
poste parte do código desta página para que fique mais fácil ver o que ocorreu de errado.
e uma coisa, pelo que você escreveu, parece que esta colocando SQL dentro da JSP (mesmo utilizando taglibs) é uma péssima idéia.
uma estrutura MVC em 99.[telefone removido]% das vezes é uma pedida muito melhor.
Diana
Codigo da taglib
publicintdoStartTag()throwsJspException{try{con=newConexao();if(cliente!=null){/***Pega somente a parte inteira do codigo***/StringidString=cliente;StringTokenizerst=newStringTokenizer(idString,"-");StringidInt[]=newString[st.countTokens()];intp=0;while(st.hasMoreTokens()){idInt[p]=st.nextToken();System.out.println(idInt[p]);p++;}/**/rs=con.executeQuery("select codigo,nome from os_contatos where cliente="+Integer.parseInt(idInt[0])+" order by codigo");}/**else{ rs=con.executeQuery("select * from midias order by titulo"); }**/setVariaveis();}catch(SQLExceptione){System.out.println(e);}if(pc.getAttribute("nome")==null)returnSKIP_BODY;returnEVAL_BODY_BUFFERED;}
o que estah errado para que ele naum preencha o segundo select???
pcalcado
Diana,
Pelos seus tópicos anteriores, dá rpa perceber que você está tentando aprender uma coisa antes da outra, mas ok, isto é problema seu. Só não reclame se ninguém responder, já que você quer aprender física sem saber somar. Aliás, por favor não abra dois tópicos com a mesma dúvida.
Se você estudou tanto assim, deveria ter começado pelo primeiro capítulo do livro, ou por um livro básico. Sim, as pessoas jogam cosias na tela e ficam esperando que funcione, e é exatamente isto que você está fazendo.
Mas novamente: é problema seu. Só não reclame das resposta que obtiver, ou que não obtiver. A escolha pelo ‘voodoo programming’ foi sua…
Diana
Na boa, naum estou reclamando do que naum obtive…
o quero deixar bem claro eh o seguinte…:‘quem quiser dar um toque, blx, quem naum quiser, tudo bem…’
Naum quis ser grossa…naum foi minha intencao.
Rafael_Steil
Diana, vc sabe usar um Debugger? muitos dos problemas voce ira resolver simplesmente colocando um breakpoint no teu codigo e ir passando ele ponto por ponto. Dessa maneira, voce pode encontrar variaveis que nao estao sendo inicializadas, outras que nao estao sendo limpas ( que proavelmetne deve ser um dos teu casos, em relacao a duplicacao de valores ) e assim por diante.
Rafael
urubatan
primeiro:
nunca faça isto:con.executeQuery("select codigo,nome from os_contatos where cliente="+Integer.parseInt(idInt[0])+" order by codigo"); aprenda a utilizar PreparedStatement para evitar o perido de SQL Injection
segundo, você precisa fechar a conexão depois de utilizar ela (nem que seja para devolver ela para o pool.
terceiro, estude melhor HTML, a tag option tem a opção value, que ja envia apenas o valor, sem a necessidade de você ter de fazer parsing de strings.
e por ultimo, não sei exatamente o que “setVariaveis” faz, mas aparentemente esta ai o problema, e lembre-se de resetar todas as variaveis de instancia no metodo doEndTag