Listar dados em combobox

3 respostas
B

Pessoal,

estou tentando listar dados do banco em um combobox, mas nada é exibido.
Em que parte do html deve ser inserido o scriplet para que seja exibida a lista corretamente?

Estou colocando da seguinte forma:

Selecione <% try { List listaSts = sacDAO.getSt(); Iterator iSts = listaSts.iterator(); Sac p; while ( iSts.hasNext() ) { p = (Sac)iSts.next(); } %>
<%
	}
		catch (Exception e)
	{
		out.println("Ocorreu um erro!");
	}
		%>	
</td>

Coloquei page import da classe, o método está ok. Testei exibir a lista dos dados do banco na página, fora do combobox, em forma de tabela e listou corretamente, o problema está em exibir dentro do combobox.
O que está errado?

Obrigada

3 Respostas

renatosilva

Em 1º lugar, uma dica: a tag [ code ] é usada para colocar códigos, tipo:

<tr><td>

<select name="teste" class="edit2">
	<option>Selecione</option>
	<option><%
		try {
			List listaSts = sacDAO.getSt();
			Iterator iSts = listaSts.iterator();
			Sac p;
			while ( iSts.hasNext() ) 
				p = (Sac)iSts.next();
	%></option>
</select>

<%		}catch (Exception e) {
			out.println("Ocorreu um erro!");
		}
%>

</td></tr>

Bem, eu não entendi, o que é "p"? Em que parte você manda imprimir os itens da lista? A exceção é gerada ou simplesmente não acontece nada? Será que o atributo value de option não é obrigatório?

V

Você tem que colocar esse while fora das tags “<option>”, e dentro do while você coloca:

out.println("<option>" + p + “</option>”);

isso se o seu “p” tem o método .toString implementado corretamente

Dica: estude o básico de html que, por sinal, você não conhece…

[]´s

renatosilva

Vegetto:
Você tem que colocar esse while fora das tags “”

É verdade, huahahauauahauhauhauahaua :lol:

Criado 3 de março de 2005
Ultima resposta 4 de mar. de 2005
Respostas 3
Participantes 3