Ver Mensaje Individual
  #3 (permalink)  
Antiguo 22/05/2008, 12:07
gorda1985
 
Fecha de Ingreso: mayo-2008
Mensajes: 5
Antigüedad: 16 años, 6 meses
Puntos: 0
Respuesta: Cargar Paginas de Select Dinamicos llenados con Base de Datos

Primero que nada muchisimas gracias por contestar:

Mira este es mi codigo de mi primer select. Lo cargo en una pagina menuEquipo.jsp

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
<%@ page contentType="text/html;charset=windows-1252"%>
<%@ page import="SI.BD.Componente"%>
<%@ page import="java.sql.ResultSet"%>

<%
ResultSet rs=null;
try{
int i = 0;
Componente componente = null;
componente = new Componente();
rs = componente.mostrarCatalogo( 0, "" );
%>


<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Equipo</title>
</head>
<body>
<p align="center" size="5">
<font color="Navy" size="10">
Alta de Equipo
</font>
</p>
<form name="formulario" method="POST" id="formulario" align="center">
<table align="center">
<tr>
<td>
<label for="Componentes"> Que tipo de dispositivo: </label>
</td>
<td>
<select name="comboComponente" id="comboComponente" onchange="javascript:cargarCombo('equipo/menuEquipoDependiente.jsp?id_componente='+this.val ue,'comboComponente','div_subComponente')" class="select" style="width:150px">
<option>Selecciona</option>
<%while(rs.next()){%>
<option value="<%=rs.getString("id")%>">
<%=rs.getString("descripcion")%>
</option>
<%}%>
</select>
</td>
</tr>
<tr>
<td colspan="2">
<div id="div_subComponente" name="div_subComponente" align="center" widht="200" heigh="200"></div>
</td>
</tr>
</table>
</form>
</body>
</html>
<%
}
catch (Exception e){


}
finally {
try {
if ( rs != null ) { rs.close(); rs = null; }
}
catch (Exception e){
}
}
%>
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Cabe de recordar que lo estoy llenado con un ResulSet llamado rs. Esa es una consulta a mi base de datos para llenar ese combo llamado comboComponente.......

Mi segundo select lo lleno asi... En la pagina menuDependiente.jsp
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
<%@ page contentType="text/html;charset=windows-1252"%>
<%@ page import="SI.BD.Componente"%>
<%@ page import="java.sql.ResultSet"%>
<%
ResultSet rs1=null;

try
{
int i = 0;
Componente componente = null;
componente = new Componente();
rs1 = componente.mostrarSubc(request);
String id_componente=null;


%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>untitled</title>
</head>
<body>
<table align="center">
<tr>
<td>
SubComponentes:
</td>
<td colspan="2"> &nbsp;&nbsp;
<select name="subComponente" id="subComponente" class="select" style="width:150px">
<option>Selecciona</option>
<%while(rs1.next()){%>
<option value="<%=rs1.getString("id_subcomponente")%>">
<%=rs1.getString("subcomponente")%>
</option>
<%}%>
</select>
</td>
</tr>
</table>
</body>
</html>
<%
}
catch (Exception e){

}
finally {
try {
if ( rs1 != null ) { rs1.close(); rs1 = null; }
}
catch (Exception e){
}
}
%>
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Haz de cuenta que todo esto me sirve muy bien... Porque tengo una funcion que se llama cargarCombo en mi js osea en mi javaScript.... Todo me funciona muy bien aqui te pongo mi codigo de la funcion de Ajax....
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
<script type="text/javascript">
//<!--
var peticion = false;
var testPasado = false;
try
{
peticion = new XMLHttpRequest();
}
catch (trymicrosoft)
{
try
{
peticion = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (othermicrosoft)
{
try
{
peticion = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (failed)
{
peticion = false;
}
}
}

if (!peticion)
alert("ERROR AL INICIALIZAR!");

function cargarCombo (url, comboAnterior, element_id)
{
//Obtenemos el contenido del div
//donde se cargaran los resultados
var element = document.getElementById(element_id);
//Obtenemos el valor seleccionado del combo anterior
var valordepende = document.getElementById(comboAnterior)
var x = valordepende.value
//construimos la url definitiva
//pasando como parametro el valor seleccionado
var fragment_url = url+'&id='+x ;
element.innerHTML = '<img src="SI/imagenes/cargando.gif"/>'; //opcional
//abrimos la url
peticion.open("GET", fragment_url);
peticion.onreadystatechange = function()
{
if (peticion.readyState == 4)
{
//escribimos la respuesta
element.innerHTML = peticion.responseText;
}
}
peticion.send(null);
}
//-->
</script>
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Como te digo los menus dependientes me funciona bien........ cabe de recordar que mi select llamado subcomponente lo lleno con otra consulta a la base de datos....
El problema es que yo quiero que al seleccionar una opcion de mi segundo select llamado subcomponente.. Me abra una pagina jsp en un div yo se que va en el evento onchange pero nose como hacerlo....
mil gracias Te lo agradeceria mucho.... Estoy haciendo un sistema de Inventarios en jsp....