Foros del Web » Programando para Internet » Javascript »

Sacar elementos de un arreglo

Estas en el tema de Sacar elementos de un arreglo en el foro de Javascript en Foros del Web. Hola Estoy intentando crear 3 select dependientes. Los select los cago via Ajax. El problema está en que no logro, a partir de los valores ...
  #1 (permalink)  
Antiguo 20/01/2009, 08:30
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 4 meses
Puntos: 126
Sacar elementos de un arreglo

Hola

Estoy intentando crear 3 select dependientes. Los select los cago via Ajax. El problema está en que no logro, a partir de los valores del select 2 cargar el 3.

Con esto cargar el segundo, pero no el tercero

Código javascript:
Ver original
  1. function Accion() {
  2. var ref = ["s_1","s_2"]; // Id del 1 y 2 select, el 3 es "s_3"
  3. for (var i = 0; i < ref.length; i++) {
  4. var elemento = document.getElementById(ref[i]);
  5. var nomevento = "change";
  6. var funcion = function() { Ciudad(document.getElementById(ref[i]).options[document.getElementById(ref[i]).selectedIndex].value); }
  7.  
  8.       if (elemento.attachEvent)
  9.       {
  10.           var f=function(){
  11.             funcion.call(elemento,window.event);
  12.         }
  13.         elemento.attachEvent('on'+nomevento,f);
  14.         return true;
  15.       }
  16.       else  
  17.         if (elemento.addEventListener)
  18.         {
  19.           elemento.addEventListener(nomevento,funcion,false);
  20.           return true;
  21.         }
  22.        else
  23.           return false;
  24.     }
  25. }
Gracias
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #2 (permalink)  
Antiguo 22/01/2009, 07:19
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 4 meses
Puntos: 126
Respuesta: Sacar elementos de un arreglo

Ok, voy a tener suerte. Como es el mismo problema, he simplificado el código para que os animéis a ayudarme.

El problema es que no logro sacar la id del segundo elemento

Código javascript:
Ver original
  1. <html>
  2. <head>
  3. <script type="text/javascript">
  4. function Prueba(t, p) {
  5. alert ("Total de Elementos " + t + "\nId del Elemento Seleccionado " +p)
  6. }
  7.  
  8.  
  9. function Accion() {
  10. var ref = ["s_1","s_2"];
  11. for (var i = 0; i < ref.length; i++) {
  12. var elemento = document.getElementById(ref[i]);
  13. var valor = ref[i];
  14. var total = ref.length;
  15. var nomevento = "click";
  16. var funcion = function() {
  17. Prueba(total, +this.id.split("_")[1]);
  18. }
  19.       if (elemento.attachEvent)
  20.       {
  21.           var f=function(){
  22.             funcion.call(elemento,window.event);
  23.         }
  24.         elemento.attachEvent('on'+nomevento,f);
  25.         return true;
  26.       }
  27.       else  
  28.         if (elemento.addEventListener)
  29.         {
  30.           elemento.addEventListener(nomevento,funcion,false);
  31.           return true;
  32.         }
  33.        else
  34.           return false;
  35.     }
  36. }
  37.  
  38. window.onload = Accion;
  39. </script>
  40. </head>
  41. <body>
  42. <div id="s_1">Elemento 1</div>
  43. <div id="s_2">Elemento 2</div>
  44. </body>
  45. </html>

Gracias
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #3 (permalink)  
Antiguo 22/01/2009, 09:46
Avatar de sweetlydark  
Fecha de Ingreso: septiembre-2008
Mensajes: 391
Antigüedad: 15 años, 7 meses
Puntos: 10
Respuesta: Sacar elementos de un arreglo

return para el ejecución de un script.
__________________
Por fin vuelvo a tener internet!
http://www.anidandoetiquetas.com/
  #4 (permalink)  
Antiguo 22/01/2009, 09:50
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: Sacar elementos de un arreglo

Probá así:
Código PHP:
<html>
<
head>
<
script type="text/javascript">
function 
Prueba(tp) {
alert ("Total de Elementos " "\nId del Elemento Seleccionado " +p)
}
 
 
function 
Accion() {
var 
ref = ["s_1","s_2"];
for (var 
0ref.lengthi++) {
(function(){
var 
elemento document.getElementById(ref[i]);
var 
valor ref[i];
var 
total ref.length;
var 
nomevento "click";

var 
funcion = function() { 
Prueba(total, +this.id.split("_")[1]); 
}
      if (
elemento.attachEvent)
      {
          var 
f=function(){
            
funcion.call(elemento,window.event);
        }
        
elemento.attachEvent('on'+nomevento,f);
        return 
true;
      }
      else  
        if (
elemento.addEventListener)
        {
          
elemento.addEventListener(nomevento,funcion,false);
          return 
true;
        }
       else
          return 
false;
})()
    }

}
 
window.onload Accion;
</script>
</head>
<body>
<div id="s_1">Elemento 1</div>
<div id="s_2">Elemento 2</div>
</body>
</html> 
El problema es este: http://blog.scriptia.net/articulos/2...esperados.html
  #5 (permalink)  
Antiguo 22/01/2009, 10:13
Avatar de sweetlydark  
Fecha de Ingreso: septiembre-2008
Mensajes: 391
Antigüedad: 15 años, 7 meses
Puntos: 10
Respuesta: Sacar elementos de un arreglo

Cita:
Iniciado por Panino5001 Ver Mensaje
Muy interesante, gracias por el link (aunque no era directamente para mi :P).
__________________
Por fin vuelvo a tener internet!
http://www.anidandoetiquetas.com/
  #6 (permalink)  
Antiguo 23/01/2009, 07:23
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 4 meses
Puntos: 126
Respuesta: Sacar elementos de un arreglo

Panino, como siempre perfecto

Gracias
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
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 15:11.