Foros del Web » Programando para Internet » Javascript »

SELECT anidados

Estas en el tema de SELECT anidados en el foro de Javascript en Foros del Web. Hola gente... Como le hago en javascript lo siguiente: He creado un conjunto de unos 10 selects en un formulario, y para ello los creo ...
  #1 (permalink)  
Antiguo 05/01/2008, 11:24
 
Fecha de Ingreso: diciembre-2007
Mensajes: 9
Antigüedad: 16 años, 4 meses
Puntos: 0
SELECT anidados

Hola gente...

Como le hago en javascript lo siguiente:

He creado un conjunto de unos 10 selects en un formulario, y para ello los creo asi:

<select name="item_venta[]" id="item_venta[]"> <select name="item_cantidad[]" id="item_cantidad[]">

y bueno quiero hacer al segundo select dependiente del primero en javascript... es sencillo hacerlo cuando se crea uno solo, es decir: <select name="item_venta" id="item_venta"> <select name="item_cantidad" id="item_cantidad">

Pero como se hace cuando son varios (o sea un vector de selects)... ya intente en javascript y no puedo...

Gracias de antemano...
  #2 (permalink)  
Antiguo 05/01/2008, 13:29
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Re: SELECT anidados

Tema trasladado a Javascript

Por favor publica en los foros correctos.
  #3 (permalink)  
Antiguo 06/01/2008, 19:23
Avatar de derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 20 años, 6 meses
Puntos: 45
Re: SELECT anidados

No me ha quedado claro:
¿Quieres hacer 10 selects encadenados? El segundo dependiente del primero, el tercero del segundo, el cuarto del tercero... ¿así?

¿O quieres hacer 5 parejas de selets? ¿Con cada pareja es un grupo de dependencia?

En las FAQ hay un ejemplo de hacer con 2, y yo hice uno inteligente con 3... pero 10... no creo que nos dé para hacerlo ni entre todos


EDIT: Ahora que me doy cuenta igual tu problema radica en que no sabes cómo acceder al elemento cuando tiene corchetes:
var valorDelCampo = document.formulario["nombreDelCampo[]"].value
Lo dejo ahí, por si acaso.
__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.

Última edición por derkenuke; 06/01/2008 a las 19:51 Razón: EDIT
  #4 (permalink)  
Antiguo 07/01/2008, 17:41
 
Fecha de Ingreso: diciembre-2007
Mensajes: 9
Antigüedad: 16 años, 4 meses
Puntos: 0
Re: SELECT anidados

Hola derkenuke...

En realidad no son solo 10 select, y no depende el 10mo del 9no... ni el 2do del 1ro.

El numero de select lo define el usuario dando clik a un boton que aumenta justamente lo que tu dices "parejas de selects".... Es decir, si el usuario crea 5 parejas de select, el 2do depende del 1ro (de la pareja 1 de selects, y asi los 2dos de sus 1ros respectivos)... no se si me explique mejor?

<select name="item_venta[]" id="item_venta[]"> <select name="item_cantidad[]" id="item_cantidad[]">

Si hago que la anterior linea se ejecute 5 veces va a resultar asi:

item_venta[0] item_cantidad[0]
item_venta[1] item_cantidad[1]
item_venta[2] item_cantidad[2]
item_venta[3] item_cantidad[3]
item_venta[4] item_cantidad[4]


Entonces si yo modifico item_venta[0] quiero que cambie item_cantidad[0] y si modifico el item_venta[3] se me cambie el item_cantidad[3]...

Creo que ahora si verdad?

El caso, es que yo lo se realizar esto pero cuando el nombre del select no lleva [], como lo hago?...

GRACIAS....
  #5 (permalink)  
Antiguo 07/01/2008, 19:07
Avatar de derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 20 años, 6 meses
Puntos: 45
Re: SELECT anidados

Hola de nuevo, ahora está todo entendido:

Si tomamos como ejemplo la FAQ#1 para llevar a cabo nuestro propósito, no creo que tengamos ningún problema, la única dificultad que veo es encontrar al select emparejado (para editar el atributo onchange).

En onchange del select item_venta[x] podríamos indicarle a la función la x, y no habría ningún problema:
Código PHP:
<select name="item_venta[3]" onchange="cambia(3)"
Luego, la función cambia() se encargará de encontrar a su hermano, dada la x, que será en este ejemplo item_cantidad[3].
El código no debería variar casi nada si haces:
Código PHP:
   function cambia(x){
    var 
oCntrl document.tuFormulario["item_cantidad["+x+"]"];
    while (
oCntrl.lengthoCntrl.remove(0);
    switch (
document.frm["item_venta["+x+"]"].selectedIndex){ 
   (...) 
Claro que quizás el código crecería bastante si quieres discernir entre diferentes x, pero si todas las parejas de select son iguales no será necesario.


Espero que lo veas así.
Un saludo
__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.
  #6 (permalink)  
Antiguo 27/01/2009, 19:10
 
Fecha de Ingreso: diciembre-2008
Mensajes: 7
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: SELECT anidados con jsp

hola ... yo tengo una aplicacion pero en jsp,
y necesito hacer una lista de 3 combos anidados,
y que se carguen de una base de datos que
esta en mysql....
pero no he podido realizarla ojala me puedan ayudar

gracias....
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 13:04.