Foros del Web » Programación para mayores de 30 ;) » Java »

Obtener String de Combo Pagina JSP

Estas en el tema de Obtener String de Combo Pagina JSP en el foro de Java en Foros del Web. Buenas, esta vez tengo una duda en un proyecto web que tengo con paginas html y JSP, en mi index tengo un botón "consulta" que ...
  #1 (permalink)  
Antiguo 01/07/2011, 15:18
 
Fecha de Ingreso: julio-2010
Mensajes: 23
Antigüedad: 13 años, 9 meses
Puntos: 0
Pregunta Obtener String de Combo Pagina JSP

Buenas, esta vez tengo una duda en un proyecto web que tengo con paginas html y JSP, en mi index tengo un botón "consulta" que me manda a una pagina jsp donde lleno y muestro una tabla con una selección [SELECT] de datos de una BD, entonces tambien muestro unos links que al dar clic sobre el hago otro SELECT a la bd y con esos datos del select se llena un comboBox/lista desplegable con un id, un nombre de laboratorio, y un edificio...

El problema que tengo es que en la seleccion que hago para llenar la tabla necesito el id del laboratorio que tengo en el comboBox para compararlo en el WHERE del SELECT, pero no se como obtener el string que se selecciona del comboBox para obtener el id con un substring...

¿como obtengo el valor que elijo del comboBox para guardar el id en una variable y en el WHERE hacer la comparacion de ese id con el de la base de datos y llenar la tabla?

Gracias por su ayuda, si necesitan algo haganlo saber gracias de antemano...
  #2 (permalink)  
Antiguo 02/07/2011, 15:03
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: Obtener String de Combo Pagina JSP

No se si entiendo bien tu duda, pero puedes obtener el valor en tu Servlet usando request.getParameter("nombre_de_tu_lista");

Sino es lo que necesita, explica un poco mas lo que deseas y pon codigo para que sea mas facil.
  #3 (permalink)  
Antiguo 03/07/2011, 14:18
 
Fecha de Ingreso: julio-2010
Mensajes: 23
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: Obtener String de Combo Pagina JSP

Gracias por tu respuesta...

Bien mira, no estoy ocupando ningun servlet, mi proyecto es un proyecto JavaWeb con netbeans y en este tengo mis paginas JSP y HTML...

Lo unico que necesito para resolver mi problema segun yo, es saber como obtener el id con un substring del valor que el usuario seleccione de un comboBox/Lista [id, nombre lab, edificio], necesito obtenerlo para compararlo con un id de la bd que tengo en el WHERE en un SELECT y de esta forma llenar mi tabla segun el valor que escoja en el comboBox/Lista...

Todo esta en un solo JSP, los links para llenar el combo segun el link que presione, el comboBox, y la tabla, todo en el mismo JSP...

Parte del codigo de todo este JSP es este:


<%
BD mibd = new BD();//objeto de mi clase BD.java donde tengo mi conex y metodos
mibd.conectarBD();
String sqlI = "select * from laboratorios where edificio='I'";
//este select se ejecuta si el link que presiona es el del edificio I y con esto llenara el comboB
ResultSet rsI = mibd.consulta(sqlI);

String sqlJ = "select * from laboratorios where edificio='J'";
ResultSet rsJ = mibd.consulta(sqlJ);

%>

Empieza el cod html de este mismo JSP.... donde hago una funcion Javascript para los links con los que se llenara el comboBox/Lista segun en el que de clic


<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script LANGUAGE="JavaScript">
function changer(link) {
if (link=="I") {
document.form1.theState.value="I";
var theOptions=new Array (
<%while (rsI.next()) {%>
"<%out.print("Id: "+rsI.getString(1)+" "+ rsI.getString("nombre"));%>",
<%}%>
"");}
else if (link=="J") {
document.form1.theState.value="J";
var theOptions=new Array (
<%while (rsJ.next()) {%>
"<%out.print("Id: "+rsJ.getString(1)+" "+ rsJ.getString("nombre"));%>",
<%}%>
"");}

i = document.form1.secondChoice.options.length;
if (i > 0) {
document.form1.secondChoice.options.length -= i; document.form1.secondChoice.options[i] = null;
}
var theCount=0;
for (e=0; e<theOptions.length-1; e++) {
document.form1.secondChoice.options[theCount] = new Option();
document.form1.secondChoice.options[theCount].text = theOptions[e];
document.form1.secondChoice.options[theCount].value = theOptions[e];
theCount=theCount+1; }
}//termina el show de los links
</script>

ya en el body... donde tengo un form y un boton con el cual quiero que me carge la tabla al dar clic, y la redirecciono a este mismo jsp que es donde esta mi tabla como mencione anteriormente...


<title>[Consultas del Horario]</title>
</head>
<body>

<form id="form1" name="form1" method="post" action="ConsultarHorario.jsp">
<input type="hidden" name="theState"></input>
<table width="800" border="0" align="center">
<tr>
<td>&nbsp;</td>
<td><strong>Select a Build:</strong></td>
<td>&nbsp;</td>
<td><strong>Select a Lab:</strong></td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr>
<td>&nbsp;</td>
<td>
<a href="javascript:changer('I')">Edificio: I</a>*|*
<a href="javascript:changer('J')">Edificio: J</a>*|
</td>
<td>&nbsp;</td>
<td>
<select name="secondChoice">
<option value="">Select a Lab</option>
</select></td>
<td>&nbsp;</td>
<td>
<input type="submit" name="consultar" id="consultar" value="Enviar"/>
</td>
<td>&nbsp;</td>
</tr>
</table>


luego abro codigo java, que es donde hago el SELECT para con estos valores que traega este, llenar la tabla que esta debajo de este codigo [la omiti por que ahora no importa]
segun el laboratorio que haya escojido del comboBox/Lista...

pero como te decia, no se como obtener el valor del comboBox que elije, y asi poder sacar como substring el ID que necesito para el WHERE de este SELECT...


<%

String query = "SELECT * FROM horario_lab WHERE id_lab = '1'";

//aqui en este WHERE deberia de ir el substring que guarde en una variable del valor que //tenga en el comboBox, pero no se como obtenerlo, y por ahora solo me llena la tabla con el //que le asigno yo mismo en el codigo y no el que selecciona...

System.out.println(query);

mibd.conectarBD();
ResultSet resset = mibd.consulta(query);

tengo una matriz para llenar mi tabla, pero la omiti porque ahora no importa para lo que necesito hacer...

%>

debajo de esto tengo mi tabla en html


Espero me haya explicado mejor, todo esto va en un solo JSP, el valor lo tengo que obtener en el mismo JSP y no mandarlo o jalarlo a otra pagina...


Gracias de antemano por sus respuestas, gracias Ronruby
  #4 (permalink)  
Antiguo 06/07/2011, 08:59
 
Fecha de Ingreso: mayo-2011
Ubicación: Lima
Mensajes: 89
Antigüedad: 13 años
Puntos: 0
Respuesta: Obtener String de Combo Pagina JSP

Bueno por lo que entiendo necesitas obtener el id, mira en un select hay dos valores, el
<option value="">que digamos es el que no se muestra algo asi:
<option value="id">Su nombre</option>
Cuando hagas:
String value_id=request.getParameter("Nombre_de_tu_select ");
Lo que te dara sera el id; ahora si lo que quiers es armar el select con datos de tu DB seria algo asi:
haces lo mismo que pusiste arriba tu consulta y luego lo metes en un select...
<select name="El_Nombre">
while(rs.next())
{
<option value=<%=rs.getInt("Campo_Id")%><%=rs.getString("C ampo_Nombre")%></option>
}
</select>
Bueno algo asi es en lo personal lo hago de otra manera, espero te sirva y si no es eso comentame, haber si te puedo ayudar... Saludos...
Aparte lo mas recomendable es usar servlet, por que codigo de conexion no debe estar ahi...

Etiquetas: combo, jsp, string
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:38.