Foros del Web » Programando para Internet » Javascript » Frameworks JS »

problema con selects dependientes

Estas en el tema de problema con selects dependientes en el foro de Frameworks JS en Foros del Web. hola! bueno quería comentaros una duda que tengo. Tengo una página jsp con selects dependientes. El primero recibe de la base de datos los tipos ...
  #1 (permalink)  
Antiguo 14/08/2008, 07:59
 
Fecha de Ingreso: marzo-2008
Mensajes: 58
Antigüedad: 16 años, 8 meses
Puntos: 0
problema con selects dependientes

hola! bueno quería comentaros una duda que tengo.
Tengo una página jsp con selects dependientes.
El primero recibe de la base de datos los tipos de productos que tengo y según lo que escoja va a la base de datos y me lista los subtipos y los muestro en el segundo select (todo esto con ajax por supuesto). El problema que tengo, es q si elijo mi primera clase-> me muestra 8 subclases y si cambio luego a otra clase que tiene menos subclases al cargar el segundo select, me pone las nuevas subclases y me rellena hasta 8 (q es el q tenia marcado antes) con las viejas.
No sé si me explico .... En el propio ajax he probado a borrar los options q sobran pero aún así no me borra todos, siempre quedan uno o dos sin borrar
Alguien me puede ayudar?
Muchas gracias!
  #2 (permalink)  
Antiguo 14/08/2008, 08:06
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 6 meses
Puntos: 2135
Respuesta: problema con selects dependientes

Hola asile,

Si publicas el código que usas para generar las opciones del select te podríamos ayudar.

Saludos.
  #3 (permalink)  
Antiguo 14/08/2008, 08:11
 
Fecha de Ingreso: marzo-2008
Mensajes: 58
Antigüedad: 16 años, 8 meses
Puntos: 0
Respuesta: problema con selects dependientes

Este es el codigo:

function handleStateChange(){
if (xmlHttp.readyState == 4) {
if (xmlHttp.status == 200) {
var refNodes = xmlHttp.responseXML.getElementsByTagName("cadena") ;
var valida = refNodes[0].childNodes[0].nodeValue;
if (refNodes == null) {
document.getElementById('cadena').value = 0;
}
else {
var existencias = xmlHttp.responseXML.getElementsByTagName("cadena") ;
var tam = refNodes.length;
var i;

for (i = 0; i < tam; i++) {

existencia = existencias[i].childNodes[0].nodeValue;
document.forms['formulario'].grupoProducto.options[i] = new Option(existencia, i);
//document.forms['formulario'].grupoProducto.options[i].value = i;
}
alert(tam);
for(var j=tam; j < 10; j++)
{
alert(j);
var aBorrar = document.forms['formulario'].grupoProducto.options[j];
alert(aBorrar);
aBorrar.parentNode.removeChild(aBorrar);
}
}
}
else {
alert("Error loading page" + xmlHttp.status + ":" + xmlHttp.statusText);
}
}
}
  #4 (permalink)  
Antiguo 14/08/2008, 09:08
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 6 meses
Puntos: 2135
Respuesta: problema con selects dependientes

Prueba antes de iniciar tu for para insertar, poner esto:
Código:
document.forms['formulario'].grupoProducto.length = 0;
Saludos.
  #5 (permalink)  
Antiguo 14/08/2008, 09:27
 
Fecha de Ingreso: marzo-2008
Mensajes: 58
Antigüedad: 16 años, 8 meses
Puntos: 0
Respuesta: problema con selects dependientes

muchisimas gracias!!! ya me estaba volviendo loca y eso ni se me había ocurrido!
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 18:35.