Ver Mensaje Individual
  #3 (permalink)  
Antiguo 10/07/2009, 13:08
lissette22
 
Fecha de Ingreso: septiembre-2006
Mensajes: 114
Antigüedad: 18 años, 1 mes
Puntos: 1
Respuesta: Llenar un combo dependiente

Hola!

Yo he echo unos select dependientes, lo que pasa es que para cada tipo de objeto necesito una jsp diferente, se podría optimizar para que fuera independiente del tipo del objeto, mi código es (yo utilizo YUI):

Esta seria la pagina q cargo el select

<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core"%>
<%@ page language="java" %>
<%@ page import="com.apuestasWeb.bean.equipo.Equipo" %>
<jsp:useBean id="listado" class="java.util.ArrayList" scope="request" />

{"Result":[
<%int j = 0;
if (listado.size()>0){
for (j = 0 ; j < listado.size()-1; j++) {
Equipo equipo = (Equipo)listado.get(j);

%>
{"Key":"<%=equipo.getIdEquipo()%>","Value":"<%=equ ipo.getNombre()%>"},
<%}Equipo equipo = (Equipo)listado.get(j);%>
{"Key":"<%=equipo.getIdEquipo()%>","Value":"<%=equ ipo.getNombre()%>"}
<% }%>
]
}

y la respuesta del script para montar el select

YAHOO.util.Dom.get("selectorEquipo").disabled="";
select = YAHOO.util.Dom.get("selectorEquipo");
if(YAHOO.lang.JSON.isValid(o.responseText)){
var longitud = select.length;
// Borrar lo que hubiera en los options
for (var i=0; i<longitud; i++){
select.options[0] = null;
}
var json = YAHOO.lang.JSON.parse(o.responseText);
// Creamos las nuevas opciones con los resultados del array
for (var i=0; i<json.Result.length; i++){
select.options[i] = new Option(json.Result[i].Value,json.Result[i].Key);
}
}

Gracias.