Perl en Español

  1. Home
  2. Tutoriales
  3. Foro
  4. Artículos
  5. Donativos
  6. Publicidad
 
Índice general » Otros Temas » JavaScript » SELECT cuyas OPTION dependen de lo elegido en otro SELECT Responder al tema
Nuevo tema


Página 1 de 1  [ 10 mensajes ] 
 
Nota 2006-03-25 05:14 @260

Perlero Frecuente
Registrado: 2005-04-28 05:47 @282
Mensajes: 188
SELECT cuyas OPTION dependen de lo elegido en otro SELECT
Agradecería si me pudiesen ayudar con lo siguiente. Tengo en un Form dos campos SELECT , supongamos en uno PAISES y en el otro ProViNCIAS. Dependiendo lo que se elija en el primero, debo desplegar las opciones del segundo.

El principal problema es que las opciones que despliegan no son siempre las mismas, es decir estáticas, sino que son datos dinámicos de una base de datos. Es decir los valores OPTION del primer SELECT cambian permanentemente, no puedo hacer un SRIPT estatico con los posibles OPTION a desplegar.

Muchas gracias :)


Nota 2006-03-25 09:35 @441
Avatar de Usuario
Creador de Perl en Español
Registrado: 2003-10-15 16:52 @744
Ubicación: México
Mensajes: 1163
Hola:

Aquí la parte más díficil no es lograr que pongas los datos de manera dinámica, pues eso lo puedes lograr con Perl. La parte más díficil es el Javascirpt para lograrlo.

Sin embargo, ya alguien tiene la solución. La otra vez quería lograr algo similar que tú, el chiste es que se pudiera seleccionar la ciudad, a partir de eso se desplegarán las colonias y finalmente las calles.

Estuve buscando un buen rato hasta que me encontré con una librería que brinda el "Javascript Toolbox":
http://www.javascripttoolbox.com/lib/dynamicoptionlist/

Realmente está perfecta la librería, sumamente sencilla de usar y aplicar en distintos casos.

Ahí en el URL que te doy, podrás encontrar el link para descargar la librería, que no es más que un .js pequeño, pero aparte podrás encontrar ejemplos de lo que puedes lograr y su documentación.

Chécalo y has pruebas, si te trabas mucho yo te ayudo, pues ya lo he usado para crear una cosa similar a lo que querías.

Ya que tengas el código funcionando, entonces ya le metemos Perl para que saques las opciones de manera dinámica.


Saludos

_________________
Uriel Lizama Perl programmer fundador de Perl en Español


Nota 2006-03-25 15:25 @684

Perlero Frecuente
Registrado: 2005-04-28 05:47 @282
Mensajes: 188
Uriel:

Muchas gracias, lo intentare , lo veo dificil, sino puedo lograrlo me comunicare contigo nuevamente. Gracias


Nota 2006-03-25 21:02 @918
Avatar de Usuario
Creador de Perl en Español
Registrado: 2003-10-15 16:52 @744
Ubicación: México
Mensajes: 1163
Hola Lor:

Realmente es muy sencillo, pero igual, si se te complica pon lo que llevas y vemos que onda.

Saludos

_________________
Uriel Lizama Perl programmer fundador de Perl en Español


Nota 2006-05-12 12:37 @567

Perlero Nuevo
Registrado: 2006-03-01 18:48 @825
Mensajes: 41
Saludos a todos:

Como dice Kidd , yo tenia un problema parecido, y lo solucione con Ajax.
Aunque en javascript de podria también.. siempre y cuando los valores de los select no sean consultados de una BD, porque si es asi, tendrias que utilizar PHP para las consultas.

Bueno, mira te paso una línea con la que desde Javascript puedes obtener el valor que fue seleccionado en el primer Select, para asi desplegar los valores del select2 , espero te sirva:
var valor_combo=document.getElementById("id_de_tu_select").options[document.getElementById("id_de_tu_select").selectedIndex].value;

Me avisas si lograste hacerlo. Suerte


Nota 2007-05-14 06:34 @315

Perlero Nuevo
Registrado: 2007-05-14 06:23 @307
Mensajes: 87
Hola estoy programando en PHP y Javascript y tengo el mismo problema que decís aquí, hacer un select dinámico, y vuestra solución no me funciona, me da 1 error al crear el DynamicOptionList(). ¿La sintaxis es así?

Syntax: [ Download ] [ Hide ]
Using javascript Syntax Highlighting
<script type="text/javascript">
var names = new DynamicOptionList();
names.addDependentFields("sex","names");
names.forValue("boy").addOptions("Matt","Bob","Joe","Bill","John");
names.forValue("girl").addOptions("Jane","Angie","Jennifer","Amy","Sue");
names.forValue("boy").setDefaultOptions("Joe");
</script>


¿Por qué a mí no me funciona?


Nota 2007-05-14 07:16 @344
Avatar de Usuario
Administrador
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España
Mensajes: 10272
¿Has cargado la librería al principio del código HTML?
Syntax: [ Download ] [ Hide ]
Using javascript Syntax Highlighting
<script type="text/javascript" src="dynamicoptionlist.js"></script>


¿Has incluido una inicialización en el onload del body?
Syntax: [ Download ] [ Hide ]
Using perl Syntax Highlighting
<body onLoad="initDynamicOptionLists()">


Eso es al menos lo que pone en su documentación.


Nota 2007-05-14 10:23 @474

Perlero Nuevo
Registrado: 2007-05-14 06:23 @307
Mensajes: 87
Mostrar objeto javascript
Si, ya la tengo incluida, pero estoy trabajando con PHP y Javascript y ya no me da un error, ahora lo que no sé es como mostrar el objeto, ¿podrías ayudarme?

El código que tengo es este:

Syntax: [ Download ] [ Hide ]
Using javascript Syntax Highlighting
<html>
<head>
<title>Documento sin t&iacute;tulo</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<script type="text/javascript" src="dynamicoptionlist.js"></script>
<script type="text/javascript">

var names = new DynamicOptionList();

names.addDependentFields("sex","names");
names.forValue("boy").addOptions("Matt","Bob","Joe","Bill","John");
names.forValue("girl").addOptions("Jane","Angie","Jennifer","Amy","Sue");
names.forValue("boy").setDefaultOptions("Joe");


names.DOL_printOptions(); // No sé pero esta función no me imprime

</script>
<body onLoad="initDynamicOptionLists()">
</body>
</html>


Y no sale nada por la pantalla, sólo me da este error:

Código:
ERROR: Couldn't find form element sex in any form on the page! Init aborted


Me dice que no encuentra el elemento sexo en ningún formulario de esta página.
Muchas gracias


Nota 2007-05-14 10:57 @498
Avatar de Usuario
Administrador
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España
Mensajes: 10272
Je, je... claro... en la página debes poner los tags <select> con esos nombres: sex y names.


Nota 2008-03-12 12:57 @581

Perlero Frecuente
Registrado: 2005-04-28 05:47 @282
Mensajes: 188
No puedo lograr esto, los elementos de mis TAG SELECT son datos obtenidos de dos query a una base de datos. Hago dos consultas a mysql y los resultados de las mismas me llenan los Tag.

Necesitaría que alguien que haya logrado hacerlo con Perl y JavaScript me pase unas líneas de código.


Muchas gracias.


Responder al tema  [ 10 mensajes ] 

Reglas del Foro
No puedes abrir nuevos temas en este Foro
No puedes responder a temas en este Foro
No puedes editar tus mensajes en este Foro
No puedes borrar tus mensajes en este Foro
No puedes enviar adjuntos en este Foro

Publicidad

Socializa

Síguenos por Twitter

Suscríbete GRATUITAMENTE al Boletín de Perl en Español

Saltar a:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Traducción al español por Huan Manwë para phpbb-es.com
phpBB SEO