Foros del Web » Programando para Internet » Javascript »

Se pueden crear variables distintas dentro de un for?

Estas en el tema de Se pueden crear variables distintas dentro de un for? en el foro de Javascript en Foros del Web. Hola, no sé si es posible, pero es que no lo consigo... el tema es que creo variables distintas en un for en jsp haciendo: ...
  #1 (permalink)  
Antiguo 11/12/2008, 06:07
 
Fecha de Ingreso: febrero-2008
Mensajes: 15
Antigüedad: 16 años, 2 meses
Puntos: 0
Se pueden crear variables distintas dentro de un for?

Hola,
no sé si es posible, pero es que no lo consigo...

el tema es que creo variables distintas en un for en jsp haciendo:

Código PHP:
<&#37;
for (int i=0i<lista.size();i++){//lista miembros XML
%>
            
<
option value="<%=i%>"><%=lista.get(i).getNombre()%> <%=lista.get(i).getApellidos() %></option>
                
                
                <
script language="javascript"

                
                var 
nombreMiembro<%=i%>="<%=lista.get(i).getNombre()%>"
                
var apellidosMiembro<%=i%>="<%=lista.get(i).getApellidos()%>"
                
var idUsuario<%=i%>=<%=i%>
                   
            
</script>
            
            <%
            }//for %> 
entonces, dentro de este for creo todas las variables y se las paso al javascript

en nombre0 esta el nombre del primer elemento del xml, en nombre1 el del segundo, etc

y llamo a javascript para que los muestre, pero no puedo hacer lo mismo porque no puedo recogerlo como nombre+i ni nada parecido

hay alguna manera??

lo que tengo ahora es:

Código PHP:
 if (id==0){
              
html22.push('<h3 class="title2">Información Usuario</h3><br><table border="0">');
              
html22.push('<th width="150px">');
                
html22.push('<ul align="left">');
                
html22.push('<li align="left"><i>Nombre:</i>',nombreMiembro0,'</li>');
                
html22.push('<li align="left"><i>Apellidos:</i>',apellidosMiembro0,'</li>');
}

 if (
id==1){
              
html22.push('<h3 class="title2">Información Usuario</h3><br><table border="0">');
              
html22.push('<th width="150px">');
                
html22.push('<ul align="left">');
                
html22.push('<li align="left"><i>Nombre:</i>',nombreMiembro1,'</li>');
                
html22.push('<li align="left"><i>Apellidos:</i>',apellidosMiembro1,'</li>');
}

etc 
ahora funciona porque sé el número de elementos del xml, pero si lo cambian no iria...

hay alguna manera de hacerlo con un for en vez de tengo if 1 then nombre1, if 2 then nombre2, etc etc


todo esto es para en un select mostrar todos los nombres y que cuando pinches en una de las opciones del select, abajo te muestre sus datos

resumiendo, se puede hacer algo parecido a lo que hago en jsp:

var nombreMiembro<%=i%>=loquesea

pero en javascript?

un saludo
  #2 (permalink)  
Antiguo 11/12/2008, 06:29
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Respuesta: Se pueden crear variables distintas dentro de un for?

Hola:

Si quieres que las variables sean globales, crealas como un objeto dependiente de window...

window["nombre" + i] = i;

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #3 (permalink)  
Antiguo 11/12/2008, 06:37
 
Fecha de Ingreso: febrero-2008
Mensajes: 15
Antigüedad: 16 años, 2 meses
Puntos: 0
Respuesta: Se pueden crear variables distintas dentro de un for?

Muchas gracias caricatos, pero mi problema no es crearlas (acabo de fijarme en lo incorrecto del título de mi hilo, sorry), es recorrerlas en un for

tengo ya creadas todas las variables: nombre1, nombre2, nombre3, etc
cada una asociada a su id

entonces lo que me gustaría es poder algo del estilo:
Código PHP:
for (var i=1i<totali++){
if (
id=i)
  
html.push('<li align="left"><i>Nombre:</i>',nombre+i,'</li>');
  
html.push('<li align="left"><i>Apellidos:</i>',apellidos+i,'</li>');


no sé si ahora me he explicado bien ^^

un saludo!
  #4 (permalink)  
Antiguo 11/12/2008, 07:40
venkman
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Se pueden crear variables distintas dentro de un for?

No sé si has pensado en utilizar Arrays, pero están hechos para este tipo de cosas.

No crees 37 variables con nombres como nombre1, nombre2, nombre3... Haz un array:

Código javascript:
Ver original
  1. var nombres = new Array();
  2. // ...
  3. // El JSP deberá hacer nombres[<%=i%>] = "<%=lista.get(i).getNombre()%>";
  4. // ...
  5. // ... más adelante tu bucle será algo como...
  6. for (var i=0; i<nombres.length; i++){
  7.   html.push('<li align="left"><i>Nombre:</i>',nombres[i],'</li>');
  8. }
  #5 (permalink)  
Antiguo 11/12/2008, 08:25
 
Fecha de Ingreso: febrero-2008
Mensajes: 15
Antigüedad: 16 años, 2 meses
Puntos: 0
Respuesta: Se pueden crear variables distintas dentro de un for?

joe, nunca me acuerdo de los arrays, parezco lerdo xD

muchas 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 07:38.