Foros del Web » Creando para Internet » HTML »

Limitar TamaÑo Lista Desplegable

Estas en el tema de Limitar TamaÑo Lista Desplegable en el foro de HTML en Foros del Web. Como puedo limitar a un numero de registros en un desplegable, esq en el campo de formulario nombre, tengo un desplegable que tira del campo ...
  #1 (permalink)  
Antiguo 16/03/2004, 05:10
 
Fecha de Ingreso: diciembre-2002
Mensajes: 130
Antigüedad: 21 años, 4 meses
Puntos: 0
Limitar TamaÑo Lista Desplegable

Como puedo limitar a un numero de registros en un desplegable, esq en el campo de formulario nombre, tengo un desplegable que tira del campo nombre de la bd pero el problema esq hay mas 100 registros y cuando pincho en la flecha se me abre el desplegable que me ocupa toda la página, y me gustaria limitarlo a 10 regitros pq queda super feo.

Saludos.
  #2 (permalink)  
Antiguo 16/03/2004, 05:16
 
Fecha de Ingreso: diciembre-2002
Mensajes: 130
Antigüedad: 21 años, 4 meses
Puntos: 0
Este es el codigo que tengo para el deplegable:

<select name="username" size="1">
<?
$listanombre = mysql_query("select * from PERSONAL where NIVEL <9 order by NOMBRE");
$row = mysql_fetch_array($listanombre);
while($row){
$nomlista = $row["NOMBRE"];
print "<option value=\"$nomlista\" SELECTED>" . $row["NOMBRE"] . "</option>";
$row = mysql_fetch_array($listanombre);
}
?>
</select>
  #3 (permalink)  
Antiguo 16/03/2004, 05:21
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Hola,
Cita:
me gustaria limitarlo a 10 regitros pq queda super feo.
Ya, feo. ¿Y si quieres seleccionar alguno de los 90 que no se muestran?

Otra pregunta: ¿cual es el criterio para saber que 10 quieres mostrar? ¿Los 10 primeros por orden alfabetico? ¿Los 10 ultimos?

De todas formas, puedes usar LIMIT para limitar el numero de registros que te devuelve la consulta:

select * from PERSONAL where NIVEL <9 order by NOMBRE LIMIT 10

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #4 (permalink)  
Antiguo 16/03/2004, 05:45
 
Fecha de Ingreso: diciembre-2002
Mensajes: 130
Antigüedad: 21 años, 4 meses
Puntos: 0
Estoy hablando de feo en la web, esq al desplegar me salen los 100 registros todos a la vez, y me tapa toda la web, lo que yo pretento es que cuando deplege me salgan diez registros pero me salga un scroll para poder bajar o subir a los demas registros, me entiendes ya mejor.

No se si me estoy explicando bien, si no dimelo e intentare explicartelo mejor.

Saludos. Muchas gracias.
  #5 (permalink)  
Antiguo 16/03/2004, 05:52
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Si, .. la limitación que quires hacer afecta directamente a las propiedades del objeto "<select>" de HTML .. así que si hay alguna forma de seleccionar cuantas opciones vas a ver en ese select y que el resto haga el "scroll" .. será por médio de algún tag/propiedad de HTML para ese objeto o CSS o soluciones Javascript pero no PHP ...

Empieza preguntanto en el foro HTML por si hay alguna propiedad para ese elemento de HTML (o tal vez CSS) y "a malas" a lo mejor se puede "simular" un "select" standard con DHTML (HTML+Javascript que use capas o similar). Pero insisto .. toda solución que encuentres va a ser del "lado del cliente" no del servidor como es el caso de PHP.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #6 (permalink)  
Antiguo 16/03/2004, 05:55
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Bueno, eso es otra cosa. Quieres que en el combo esten todos los registros, pero que se muestre con barra de desplazamiento. Como en estos foros, en el combo de seleccion rapida de foro.

PHP solo genera HTML, pero no controla como funciona ese HTML. Lo que comentas es un efecto del navegador, controlado por el navegador y el HTML. PHP se ejecuta en el servidor, no tiene poder sobre el navegador.

Asi que lo que tienes que hacer es encontrar la solucion HTML a tu problema, asi que muevo el mensaje a ese foro.

Saludos desde PHP.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #7 (permalink)  
Antiguo 16/03/2004, 09:40
Avatar de Helbira  
Fecha de Ingreso: octubre-2001
Ubicación: Sevilla, España
Mensajes: 1.228
Antigüedad: 22 años, 6 meses
Puntos: 5
Puf!!.. Josemi.. Cluster.. no me creo que no sepais hacer eso en HTML. Seguro que lo sabiais y solo os limitais a mandarla al foro de html sin darle la respuesta. Esperaba mucho mas de vosotros.


Te dejo una lista de ocho elementos pero solo son visibles 5... el resto tienes que verlo moviéndote con el scroll que te crea.

Código PHP:
<select name="lista" size="5">
  <
option value="1">uno</option>
  <
option value="2">dos</option>
  <
option value="3">tres</option>
  <
option value="4">cuatro</option>
  <
option value="5">cinco</option>
  <
option value="6">seis</option>
  <
option value="7">siete</option>
  <
option value="8">ocho</option>
</
select
Un beso, Chari

P.D.: Vaaaleee, para Cluster y josemi otro

Última edición por Helbira; 16/03/2004 a las 09:48
  #8 (permalink)  
Antiguo 17/03/2004, 03:04
 
Fecha de Ingreso: diciembre-2002
Mensajes: 130
Antigüedad: 21 años, 4 meses
Puntos: 0
Ese no era el problema lo que me indicas ya lo habia probado, yo no quiero que me lo muestre en una lista.

Yo quiero que el desplegable que me muestre no sea tan grande. Es decir, que en vez de mostrarme un desplegable que ocupe toda la página me muestre un despelgable con 10 y un scroll para ir de ariba a abajo.

Muchas Gracias Elvi. Bsos
  #9 (permalink)  
Antiguo 17/03/2004, 04:01
Avatar de Helbira  
Fecha de Ingreso: octubre-2001
Ubicación: Sevilla, España
Mensajes: 1.228
Antigüedad: 22 años, 6 meses
Puntos: 5
Y no es eso lo que hace el <select size="10">????

Yo lo veo así.. como un desplegable que muestra hasta 10 nombre cda vez que lo despliegas y luego te puedes mover de arriba a abajo para ver los demás..


No se de que me estás hablando, lo veo tal y como dices.

Explicate un poco mejor, pleaseee
  #10 (permalink)  
Antiguo 17/03/2004, 04:06
Avatar de Helbira  
Fecha de Ingreso: octubre-2001
Ubicación: Sevilla, España
Mensajes: 1.228
Antigüedad: 22 años, 6 meses
Puntos: 5
Valeee.. ya entendí... ok!

  #11 (permalink)  
Antiguo 17/03/2004, 04:29
Avatar de Helbira  
Fecha de Ingreso: octubre-2001
Ubicación: Sevilla, España
Mensajes: 1.228
Antigüedad: 22 años, 6 meses
Puntos: 5
Exclamación

Pues la cosa parece que está dificil. Vas a tener que mezclar Javascript y exactamente lo que necesitas es un campo de texto con una lista como la que consigues con size="10" justo debajo de tu caja de texto de tal forma que cuando hagas clic en la caja de texto te muestre esa lista para seleccionar un valor y una vez seleccionado, quitas la lista pero pones el valor seleccinado en lacaja de texto

Lioso pero podría hacerse, y todo eso usando eventos y JavaScript.

De todas formas hice una chapuza más sencilla pero provoca efectos raros en el navegador. Te pongo el código, mira lo que hace exactamente y aunque no es elegante supongo que al menos me confirmas que es eso lo que quieres.

Código PHP:
<%@LANGUAGE="JAVASCRIPT" CODEPAGE="1252"%>
<
html>
<
head>
<
title>Select raaaroraaaroraaaaro ;P</title>
<
meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</
head>
<
body>
<
form name="frm_nombres">
<
select name="lista" size="1" onClick="document.frm_nombres.lista.size='5';" onMouseOut="document.frm_nombres.lista.size='1';">
  <
option value="1">uno</option>
  <
option value="2">dos</option>
  <
option value="3">tres</option>
  <
option value="4">cuatro</option>
  <
option value="5">cinco</option>
  <
option value="6">seis</option>
  <
option value="7">siete</option>
  <
option value="8">ocho</option>
</
select>
</
form>
</
body>
</
html
Suerte

P.D.: Mandé que movieran tu mensaje a JavaScript.. allí te ayudarán mucho más.
  #12 (permalink)  
Antiguo 17/03/2004, 08:45
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Helbira, no le conteste porque no se como se hace. Es mas, empiezo a pensar que es cosa del navegador. Porque el combo de seleccion rapida de foros de estos foros, con IExplorer me muestra 11 y con Mozilla 20 elementos (con la barra de desplazamiento para los demas). Y en todas las paginas que he hecho, nunca me salian todos, siempre me salia la barra.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #13 (permalink)  
Antiguo 17/03/2004, 09:33
Avatar de Helbira  
Fecha de Ingreso: octubre-2001
Ubicación: Sevilla, España
Mensajes: 1.228
Antigüedad: 22 años, 6 meses
Puntos: 5
Oscuin!!! pues es verdad, las listas desplegables de estos foros tienen el comportamiento que quiere chari.. pues ya está, no? sólo tenemos que destripar el código fuente de la página...

Le echo un vistacillo y lo adaptamos al código de chari

Respecto a que un navegador muestre 11 y otros 20 supongo que no le importará a chari ya que la cuestión es que no se estire la lista hasta 100 nombres, no chari?

Tahora
  #14 (permalink)  
Antiguo 17/03/2004, 09:42
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Veamos, he hecho una prueba rapida de una pagina HTML vacia solo con el select, y me muestra solo los 11 en el explorer. Sin estilos, sin atributos, sin nada mas que el <select> y el chorizo de <option>.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #15 (permalink)  
Antiguo 17/03/2004, 09:59
Avatar de Helbira  
Fecha de Ingreso: octubre-2001
Ubicación: Sevilla, España
Mensajes: 1.228
Antigüedad: 22 años, 6 meses
Puntos: 5
Ay, josemi.. no te me impacientes chico!!!

Ok. Entendí lo que me querías decir . Es verdad, tienes toda la razón . Según el navegador te despliega los selects con más o menos opciones. No es algo que se configure en el select sino que parece ser que es un valor predeterminado del navegador.

Entonces ahora me pregunto yo porque chari dice que le salen los 100 nombres???

Chari, que navegador usas y que versión? y así saldremos de dudas.

P.D.: Perdona otra vez, josemi. Será el calor. Aquí la primavera empieza a hacer estragos.

  #16 (permalink)  
Antiguo 22/03/2004, 06:30
 
Fecha de Ingreso: diciembre-2002
Mensajes: 130
Antigüedad: 21 años, 4 meses
Puntos: 0
Siento no haber respondido antes, pero esque he estado muy liada que hemos tenidos unas celebraciones en la empresa y estoy haciendo unos cursos que no he tenido tiempo para responder. Lo siento, y más sabiendo que estais pensando en mi problema.

A mi con Explorer version version 6.0 con sp1 me muestra 30 registros, con Netscape 7.0 me muestra 20.

Saludos. besos
  #17 (permalink)  
Antiguo 22/03/2004, 06:33
Avatar de Helbira  
Fecha de Ingreso: octubre-2001
Ubicación: Sevilla, España
Mensajes: 1.228
Antigüedad: 22 años, 6 meses
Puntos: 5
Y no te vale, verdad ?...... no son 100

  #18 (permalink)  
Antiguo 20/10/2005, 15:17
 
Fecha de Ingreso: julio-2004
Mensajes: 45
Antigüedad: 19 años, 8 meses
Puntos: 0
Estoy igual...

Yo tengo el mismo problema porque es un select de paises y son más de 240 <option> y no consigo el como hacer que me los muestre en un tamaño decente (se podrán imaginar lo feo que pega de punta a punta en el alto de la pantalla.

Gracias de antemano,
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 05:52.