html select tag

21/06/2006 - 10:58 por Juosepe | Informe spam
Saludos,

Tengo un formulario con una campo select que tiene muchos
elementos.
Quiro especificar el tamaño de alto de este campo, o sea el
número de elementos que muestra cuando se desplega.

No quiero tocar el campo "size" ya que quiero que si no se
desplega muestre solo 1 elemento.

He probado con el atributo height en css pero no me hace caso.

El problema lo tengo realmente en XP que cuando desplego
la lista me muestra más de 30 elementos tapando casi toda la pantalla.
En w2003 solo me muestra 10.

Como puedo especificar esto?

Gracias.

Preguntas similare

Leer las respuestas

#1 Miguel Gonzalez
21/06/2006 - 15:52 | Informe spam
Hola Juosepe.

Pues lo tienes dificil para especificarlo desde la propia página web.

Los "controles <select>" pertenecen a lo que se llama "controles
ventanizados" y los navegadores dependen para el despliegue de los
mismos de las "instrucciones de dibujo" que les proporcione el sistema
operativo. No tienen ningún atributo o propiedad estándar que te permita
indicar las opciones a mostrar cuando se despliega el <select>.

Ante esta disyuntiva, lo que se suele hacer es imitar el <select>
mediante un <div>, dándole un formato apropiado mediante CSS, y usando
"javascript" para gestionar los datos a enviar con el formulario.

Saludos!

Miguel

Juosepe escribió:
Saludos,

Tengo un formulario con una campo select que tiene muchos
elementos.
Quiro especificar el tamaño de alto de este campo, o sea el
número de elementos que muestra cuando se desplega.

No quiero tocar el campo "size" ya que quiero que si no se
desplega muestre solo 1 elemento.

He probado con el atributo height en css pero no me hace caso.

El problema lo tengo realmente en XP que cuando desplego
la lista me muestra más de 30 elementos tapando casi toda la pantalla.
En w2003 solo me muestra 10.

Como puedo especificar esto?

Gracias.


Respuesta Responder a este mensaje
#2 Arturo Costa Delgado
23/06/2006 - 05:06 | Informe spam
El problema esta en que no hay un control sobre este evento, pues depende no
sólo del sistema operativo (creo que muy poco incide) sino más del browser y
la ubicación del select en la pantalla (no ventana, sino la pantalla física
del monitor) al momento de activarlo.

Una forma más simple, pero no tan vistosa, es darle un valor fijo al size.
Pero como tu dices, no deseas tocarlo para mostrar por defecto 1 elemento.
¿Que opinas de utilizar javascript y generar una ventana adicional donde
estén todos los campos del select que desees mostrar y que al seleccionar
uno, este quede grabado en el formulario de origen, sea en un campo texto o
en uno oculto?. En un catálogo que desarrollé hace algún tiempo, utilice
esta opción. El usuario al ingresar un nuevo producto, debía de seleccionar
a que categoría ligarlo. Para ello, cree un simple link que abre una ventana
adicional donde se carga una simple página ASP que carga todas las
categorías (inclusive con la opción de poder alterar el orden, y mostraba
cuantos productos habían en cada categoría, y demás cosas) donde el usuario
seleccionaba una haciendo clic en el nombre de la categoría y este disparaba
un script (el nombre estaba como link) y mandaba al formulario origen
(parent.location.opener) el valor seleccionado y luego cerraba la ventana
adicional. Este nuevo valor era mostrado en un campo texto y además se
guardaba el código de la categoría (el ID) en un campo oculto o hidden.

Esta es una idea que comparto contigo. Espero que te sea de utilidad.

ACD
Respuesta Responder a este mensaje
#3 Juosepe
30/06/2006 - 15:39 | Informe spam
Ok Perfecto.
Muchas gracias por vuestros comentarios.


"Arturo Costa Delgado" escribió en el
mensaje news:
El problema esta en que no hay un control sobre este evento, pues depende
no
sólo del sistema operativo (creo que muy poco incide) sino más del browser
y
la ubicación del select en la pantalla (no ventana, sino la pantalla
física
del monitor) al momento de activarlo.

Una forma más simple, pero no tan vistosa, es darle un valor fijo al size.
Pero como tu dices, no deseas tocarlo para mostrar por defecto 1 elemento.
¿Que opinas de utilizar javascript y generar una ventana adicional donde
estén todos los campos del select que desees mostrar y que al seleccionar
uno, este quede grabado en el formulario de origen, sea en un campo texto
o
en uno oculto?. En un catálogo que desarrollé hace algún tiempo, utilice
esta opción. El usuario al ingresar un nuevo producto, debía de
seleccionar
a que categoría ligarlo. Para ello, cree un simple link que abre una
ventana
adicional donde se carga una simple página ASP que carga todas las
categorías (inclusive con la opción de poder alterar el orden, y mostraba
cuantos productos habían en cada categoría, y demás cosas) donde el
usuario
seleccionaba una haciendo clic en el nombre de la categoría y este
disparaba
un script (el nombre estaba como link) y mandaba al formulario origen
(parent.location.opener) el valor seleccionado y luego cerraba la ventana
adicional. Este nuevo valor era mostrado en un campo texto y además se
guardaba el código de la categoría (el ID) en un campo oculto o hidden.

Esta es una idea que comparto contigo. Espero que te sea de utilidad.

ACD



email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida