Foros del Web » Programando para Internet » Javascript »

ayuda con funcion control de select

Estas en el tema de ayuda con funcion control de select en el foro de Javascript en Foros del Web. Tengo el siguiente codigo para que las opciones de un select dependan de la opcion seleccionada en un select anterior. Código HTML: function addOpt(oCntrl, iPos, ...
  #1 (permalink)  
Antiguo 05/06/2008, 01:52
Avatar de PedroRodas  
Fecha de Ingreso: noviembre-2005
Ubicación: Cádiz
Mensajes: 393
Antigüedad: 18 años, 5 meses
Puntos: 0
ayuda con funcion control de select

Tengo el siguiente codigo para que las opciones de un select dependan de la opcion seleccionada en un select anterior.

Código HTML:
   function addOpt(oCntrl, iPos, sTxt, sVal){
     var selOpcion=new Option(sTxt, sVal);
     eval(oCntrl.options[iPos]=selOpcion);
   }

   function cambia(oCntrl){
    while (oCntrl.length) oCntrl.remove(0);
    switch (document.frm.material.selectedIndex){
     case 0: 
	  addOpt(oCntrl,  0, "- Selecciona -", "");     
	  addOpt(oCntrl,  1, "38 x 42 dos asas corta", "38 x 42 dos asas corta");
      addOpt(oCntrl,  2, "38 x 42 dos asas larga", "38 x 42 dos asas larga");
      addOpt(oCntrl,  3, "38 x 42 un asa", "38 x 42 un asa");
      addOpt(oCntrl,  4, "38 x 42 dos asas corta y cordón", "38 x 42 dos asas corta y cordón");
      addOpt(oCntrl,  5, "38 x 42 dos asas corta y 5 cm. de fondo", "38 x 42 dos asas corta y 5 cm. de fondo");
      addOpt(oCntrl,  6, "22 x 27 dos asas cortas", "22 x 27 dos asas cortas");     
      addOpt(oCntrl,  7, "50 x 50 dos asas cortas", "50 x 50 dos asas cortas");
      addOpt(oCntrl,  8, "50 x 70 dos asas cortas", "50 x 70 dos asas cortas");
      addOpt(oCntrl,  9, "Mochila sin fondo", "Mochila sin fondo");	  
	  addOpt(oCntrl,  10, "Mochila con fondo circular", "Mochila con fondo circular");
	  break;
     case 1: 
	  addOpt(oCntrl,  0, "- Selecciona -", "");
	  addOpt(oCntrl,  1, "38 x 42 dos asas corta", "38 x 42 dos asas corta");
      addOpt(oCntrl,  2, "38 x 42 dos asas larga", "38 x 42 dos asas larga");
      addOpt(oCntrl,  3, "38 x 42 un asa", "38 x 42 un asa");
      addOpt(oCntrl,  4, "38 x 42 dos asas corta y cordón", "38 x 42 dos asas corta y cordón");
      addOpt(oCntrl,  5, "38 x 42 dos asas corta y 5 cm. de fondo", "38 x 42 dos asas corta y 5 cm. de fondo");
      addOpt(oCntrl,  6, "22 x 27 dos asas cortas", "22 x 27 dos asas cortas");     
      addOpt(oCntrl,  7, "50 x 50 dos asas cortas", "50 x 50 dos asas cortas");
      addOpt(oCntrl,  8, "50 x 70 dos asas cortas", "50 x 70 dos asas cortas");
      addOpt(oCntrl,  9, "Mochila sin fondo", "Mochila sin fondo");	  
	  addOpt(oCntrl,  10, "Mochila con fondo circular", "Mochila con fondo circular");
	  addOpt(oCntrl,  11, "38x29 2 asas bicolor horizontal y 10cm. de fondo", "38x29 2 asas bicolor horizontal y 10cm. de fondo");	
	  addOpt(oCntrl,  12, "38x42 2 asas bicolor vertical y 10cm. de fondo", "38x42 2 asas bicolor vertical y 10cm. de fondo");	  
	  addOpt(oCntrl,  13, "44x38 2 asas y 10cm. de fondo", "44x38 2 asas y 10cm. de fondo");	  	  
	  break;
    }
   }
El texto que esta duplicado y que corresponde al modelo de bolsa, esta 2 veces porque asi consigo que cuando hago el $_POST para imprimir la opcion seleccionada, me aparezca ese texto y no un numero, como ocurria hasta que cambie el numero que habia como ultimo parametro por el texto descriptivo del modelo.

No se demasiado bien que es cada parametro ya que la funcion la he cogido ya hecha, y aunque he ido manejandola para comprenderla no me iria mal que alguien me dijera que parametro es cada uno: addOpt(oCtrl, numero, texto_descriptivo,texto_descriptivo).

Quiero saber esto tambien porque pretendo que en funcion del modelo seleccionado, tanto si es del case0 como del case1, se cargue una imagen con los colores disponibles para ese modelo.

Muchas gracias de antemano por cualquier sugerencia.
__________________
Genial concierto de Roger Waters, Pink Floyd siguen vivos!!!
  #2 (permalink)  
Antiguo 05/06/2008, 06:12
Avatar de Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 20 años
Puntos: 834
Respuesta: ayuda con funcion control de select

Fijate en este enlace la descripción de los parámetros necesarios para instanciar el objeto Option:
http://docs.sun.com/source/816-6408-10/option.htm
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 17:11.