Foros del Web » Programando para Internet » Javascript »

Links en lista desplegable

Estas en el tema de Links en lista desplegable en el foro de Javascript en Foros del Web. Saludos a todos... Sigo intentando construir mi pagina con mis escasos conocimientos... Vereis, en esta ocasion se trata de la seccion de fotografia. Quiero dividir ...
  #1 (permalink)  
Antiguo 15/04/2003, 12:25
Avatar de Sperrit  
Fecha de Ingreso: marzo-2003
Ubicación: Valenciennes, Francia
Mensajes: 117
Antigüedad: 21 años, 8 meses
Puntos: 0
Pregunta Links en lista desplegable

Saludos a todos...

Sigo intentando construir mi pagina con mis escasos conocimientos...

Vereis, en esta ocasion se trata de la seccion de fotografia. Quiero dividir las paginas segun el tema de las fotos, y para hacerlas accesibles he pensado en una lista de elementos, a la cual se accede apretando el boton.

He aqui el ejemplo de lo que quiero hacer: http://www.terra.es/personal3/0casado0/fotos2.htm

Lo que ocurre es que no se como hacer para que al apretar el boton me dirija a la pagina que yo quiero

ALguna sugerencia?

P.S.: Tambien he visto en algunas paginas (por ejemplo en esta, en la lista desplegable para elegir foro, arriba a la izquierda) que el link se activa automaticamente al seleccionar la opcion... Se podria hacer.


Gracias a todos de antemano,
Sperrit
  #2 (permalink)  
Antiguo 15/04/2003, 12:33
 
Fecha de Ingreso: noviembre-2002
Ubicación: Elche
Mensajes: 548
Antigüedad: 22 años
Puntos: 0
<form name="formulario">
<img style="cursor:hand;" src="../imagenes/go2.jpg" alt="Pulse para ver/Press to see" onclick="des1();" align="left">

<select name="modelos" style="color:#ffffff; background-color:#800080; font-family:arial,tahoma,verdana;
font-weight:bold; font-size:11 px;">

<option selected style="color:#00a6ca;">STYLES
<option value="../integral/2500.html" style="color:#ffebff;">SH 2500 RACER
<option value="../integral/2505.html" style="color:#ffebff;">SH 2505 POLE

...
</select>


********** LA FUNCIÓN A LA QUE LLAMA ++++++++

function des1(){

var opcion1 = document.formulario.modelos.selectedIndex;

var destino = document.formulario.modelos.options[opcion1].value;

window.open (destino, '_self');

}



El resultado entras en:

www.shirohelmet.com

Espero que sea esto lo que buscas. Si necesitas alguna aclaración ... avisa.

  #3 (permalink)  
Antiguo 15/04/2003, 12:36
 
Fecha de Ingreso: noviembre-2002
Ubicación: Elche
Mensajes: 548
Antigüedad: 22 años
Puntos: 0
Perdón.

En www.shirohelmet.com

pica en cascos y después colección.
  #4 (permalink)  
Antiguo 15/04/2003, 12:37
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 7 meses
Puntos: 1284
Hola Sperrit:

Con las listas desplegables, tendrías que poner en el value de cada option la dirección de la página, y en el botón poner algo así:
onclick="location.href = elSelect.value"

elSelect, si no está dentro de un form tiene que tener un atributo ID y referenciarlo con el archiconocido getElementById, con un form, deberías asignar al action el value del select y luego hacer submit... bueno, hay más formas, pero creo que la primera y esta segunda están bien.

Por cierto, creo que ya te lo dije, la página me parece muy bien.

Saludos
  #5 (permalink)  
Antiguo 15/04/2003, 12:38
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 7 meses
Puntos: 1284
Elig:

Nos hemos chocado 2 veces en menos de 5 minutos...

Saludos
  #6 (permalink)  
Antiguo 15/04/2003, 12:44
Avatar de Sperrit  
Fecha de Ingreso: marzo-2003
Ubicación: Valenciennes, Francia
Mensajes: 117
Antigüedad: 21 años, 8 meses
Puntos: 0
Vaya, esto si que es efectividad!!!

Me voy a poner pon ello, pero antes gracias por responder tan pronto.

caricatos , me parece que te estas ganando el derecho a que la pagina acabe llamandose "caricatos" mas que "sperrit" .

No, en serio, gracias por ayudarme a aprender

Y lo de que esta quedando bien... Cada vez que veo otra pagina veo lo cutre y simple que es la mia, pero... no se le pueden pedir peras al olmo, no?

Ta pronto,

Sperrit
  #7 (permalink)  
Antiguo 15/04/2003, 12:45
Avatar de Sperrit  
Fecha de Ingreso: marzo-2003
Ubicación: Valenciennes, Francia
Mensajes: 117
Antigüedad: 21 años, 8 meses
Puntos: 0
De todas formas, no seria posible sin vosotros, me acordare en la version final
  #8 (permalink)  
Antiguo 15/04/2003, 12:50
 
Fecha de Ingreso: noviembre-2002
Ubicación: Elche
Mensajes: 548
Antigüedad: 22 años
Puntos: 0
Tu lo que tienes que hacer es obedecer a CARICATOS y triunfarás.

SALUDOS
  #9 (permalink)  
Antiguo 15/04/2003, 12:55
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 7 meses
Puntos: 1284
Hola otra vez:

No seas muy exigente. Siempre encontrarás páginas bonitas, pero es evidente que la página que estás haciendo, ve a tener tu estilo propio...

Esperemos ver esa "versión final" pronto.

Saludos
  #10 (permalink)  
Antiguo 16/04/2003, 12:32
Avatar de Sperrit  
Fecha de Ingreso: marzo-2003
Ubicación: Valenciennes, Francia
Mensajes: 117
Antigüedad: 21 años, 8 meses
Puntos: 0
Gracias a los dos...

Al final utilicé el codigo de Elig (lo veia mas claro, lo que no significa que lo sea, sino que se adaptaba mas a mis entendederas ).

Funciona perfectamente...

Asias elig

Hala, a seguir con ello....


Sperrit
  #11 (permalink)  
Antiguo 16/04/2003, 13:11
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 23 años, 3 meses
Puntos: 381
Huy que tarde llego a esta fiesta

pues dejaré mi aportación, jejé

En mi opinión la forma más sencilla es sin funciones ni id's ni ná, simplemente algo tipo:

<select onChange="location.href=this.options[this.selectedIndex].value">
<option value="http://www.yahoo.es/">Yahoo</option>
<option value="http://www.google.com/"> Google</option>
<option value="http://es.es.altavista.com/"> Altavista </option>
</select>

Y yá.

Si quieres que cargue en un frame concreto entonces sería

parent.nombredelFrame.location.href=this.options[this.selectedIndex].value

  #12 (permalink)  
Antiguo 16/04/2003, 15:35
Avatar de Sperrit  
Fecha de Ingreso: marzo-2003
Ubicación: Valenciennes, Francia
Mensajes: 117
Antigüedad: 21 años, 8 meses
Puntos: 0
Hola tunait

Nunca es tarde si la dicha es buena, y en este caso lo es

Efectivamente, he probado, y la cosa funciona, menos complicaciones, dos scripts menos (porque necesitaba una funcion para cada formulario), me quito el boton de "aceptar", codigo mas ligero y mas legible.

Pero... (siempre lo hay, me parece)... me pasa una cosa:

En la lista aparecen x elementos:

Perros
Gatos
Mariposas
Murcielagos
Hormigas
etc

Por defecto, viene "seleccionado" el primero en la lista desplegable. Ahora bien, como no hay "onChange", para ver la pagina de ese elemento tengo que haber visto otra antes.

(No se si me he explicado con claridad )

Como podria hacer para poder acceder a ese primer elemento de la lista sin haber antes cambiado la seleccion??

Asias...

Sperrit
  #13 (permalink)  
Antiguo 16/04/2003, 16:50
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 7 meses
Puntos: 1284
Hola otra vez:

Un par de cosas:

no sé si funciona bien en todos los navegadores, pero en vez de poner como pone tunait:

Cita:
<select onChange="location.href=this.options[this.selectedIndex].value ">
yo solo uso:

Cita:
<select onChange="location.href=this.value ">
Se supone que el value del select es el mismo que la opción "activa"... (si estoy errado, me pueden corregir)

La segunda cosa es hacer como hacen en estos foros y en tantos otros sitios, hacer la acción con el onchange y a la vez poner un botón "ir"..., entonces deberías ponerle un name al select, y en el botón onclick="location.href = elSelect.value"

Saludos
  #14 (permalink)  
Antiguo 19/04/2003, 05:44
Avatar de Sperrit  
Fecha de Ingreso: marzo-2003
Ubicación: Valenciennes, Francia
Mensajes: 117
Antigüedad: 21 años, 8 meses
Puntos: 0
Bueno, mas o menos esta (aunque incompleto )

El resultado esta en la seccion de fotografia, en "las fotos"

Al final he tenido que "mezclar" la solucion de tunait con la de Elig (asias otra vez ), falto de conocimientos para hacerlo mas facil, asi que si alguien tiene alguna idea mejor, esta sera muy bienvenida...

La opcion "onChange" no bastaba si alguien quiere ver por ejemplo el primer elemento de la lista. Antes tiene que cambiar el elemento (lo que le dirige a la seccion en cuestion) y luego hacer "back" para volver a la pagina original, esta vez con el elemento de la lista cambiado, lo que le permite seleccionar el primero. Para evitarlo, inclui los botones, pero no supe hacerlo sin llamar a una funcion que guardara el elemento seleccionado...

Bueno, todo esto por si le sirve a alguien. Si alguien sabe como hacerlo sin utilizar funciones... pues gracias de antemano!

Hala, a seguir
  #15 (permalink)  
Antiguo 19/04/2003, 05:56
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 23 años, 3 meses
Puntos: 381
aish no volví a pasar por este post, sorry

Sperrit,

Lo que se suele hacer es que la primera opcion suele ser un "Seleccione un destino" o algo así, así desde el primer momento ocurrirá un onChange

mira prueba algo asi

<select onChange="if(this.selectedIndex != 0)location.href=this.value">
<option> Seleccione un destino </select>
<option value="http://www.yahoo.es/">Yahoo</option>
<option value="http://www.google.com/"> Google</option>
<option value="http://es.es.altavista.com/"> Altavista </option>
</select>

p.d. Caricatos, juraría que antes el this.value no le valía
Pero por alguna razón ahora sí quiere thanks
  #16 (permalink)  
Antiguo 19/04/2003, 06:02
Avatar de Sperrit  
Fecha de Ingreso: marzo-2003
Ubicación: Valenciennes, Francia
Mensajes: 117
Antigüedad: 21 años, 8 meses
Puntos: 0
Cachis...

A veces lo mas dificil es pensar facil

Efectivamente, la solucion no pasaba ni por funciones, ni por botones, ni por nada: solo por un elemento mas

En fin.... Asias otra vez
  #17 (permalink)  
Antiguo 19/04/2003, 09:45
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 7 meses
Puntos: 1284
Hola otra vez:

Tunait: La verdad es que a mí también me parece que antes no funcionaba lo que he comentado, pero ¡A la prueba me remito!...

Tal vez se tratara de otra cosa, o tal vez era de otro contexto... ¡quién sabe!

Bueno, espero haber ayudado en algo...

Saludos
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.