Foros del Web » Programación para mayores de 30 ;) » Programación General »

Seleccion predeterminada de elementos

Estas en el tema de Seleccion predeterminada de elementos en el foro de Programación General en Foros del Web. para los combos o listas desplegables quiero que una de las opciones quede como seleccionada segun una comparacion de valores. Los elementos del combo son ...
  #1 (permalink)  
Antiguo 31/01/2003, 08:58
 
Fecha de Ingreso: noviembre-2002
Mensajes: 1.135
Antigüedad: 21 años, 5 meses
Puntos: 2
Seleccion predeterminada de elementos

para los combos o listas desplegables quiero que una de las opciones quede como seleccionada segun una comparacion de valores. Los elementos del combo son sacados de una base de datos. El codigo que utilizado para que seleccione un elemento es este, pero no funciona.

<cfoutput query="GetColaboradores">

<cfif #Form.colaborador# EQ #Session.Colaborador#>

<option value="#Matricula#" selected>#NomColaborador#</option>

</cfif>

</cfoutput>

no se por que no funciona
  #2 (permalink)  
Antiguo 31/01/2003, 09:09
Avatar de Cain  
Fecha de Ingreso: enero-2002
Ubicación: Catalunya
Mensajes: 6.459
Antigüedad: 22 años, 3 meses
Puntos: 17
Pruébalo así:

Código:
<option value="#Matricula#" <cfif Form.colaborador is Session.Colaborador>selected</cfif>>#NomColaborador#</option>
__________________
M a l d i t o F r i k i
  #3 (permalink)  
Antiguo 31/01/2003, 09:26
 
Fecha de Ingreso: noviembre-2002
Mensajes: 1.135
Antigüedad: 21 años, 5 meses
Puntos: 2
no me funciona

Cain, sigue sin funcionarme, no sé por que. Se selecciona el ultimo registro siempre.

mira el codigo que tengo:

<cfquery name="GetMeses" datasource="#GESCOLA#" dbtype="odbc" username="#usuario#" password="#password#">
SELECT DISTINCT mes FROM Trabajos
</cfquery>

<td bgcolor="#C4DEE1">

<select name="meses" onChange="JavaScript:document.Form.submit();"><!--Rellenamos el combo Mes con aquellos que tienen trabajos-->

<option value="0" <cfif Form.meses EQ Session.Mes>selected</cfif>>Todos</option>

<cfoutput query="GetMeses">

<option value="#GetMeses.Mes#" <cfif Form.meses EQ Session.Mes>selected</cfif>>#GetMeses.Mes#</option>

</cfoutput>
</select>

gracias

parece ke controlas bastante, tienes alguna cuenta hotmail para poderme poner en contacto contigo?
la mia es [email protected]

Última edición por joja_2; 31/01/2003 a las 09:40
  #4 (permalink)  
Antiguo 31/01/2003, 09:54
Avatar de Cain  
Fecha de Ingreso: enero-2002
Ubicación: Catalunya
Mensajes: 6.459
Antigüedad: 22 años, 3 meses
Puntos: 17
Si te fijas, verás que en tu página compruebas únicamente si form.meses equivale a session.mes

Esto signfica que si el campo meses que ha arrojado el formulario que ha llamado la página, y el campo mes de la session del usuario coinciden, Cold Fusion pintará selected en todos los option de tu código.

Código:
<cfoutput query="GetMeses">

<option value="#GetMeses.Mes#" <cfif Form.meses EQ Session.Mes>selected</cfif>>#GetMeses.Mes#</option>

</cfoutput>
Si lo que quiere, es verificar el campo mes de tu query, usa este otro código:

Código:
<cfoutput query="GetMeses">

<option value="#Mes#" <cfif mes EQ Session.Mes>selected</cfif>>#GetMeses.Mes#</option>

</cfoutput>
Esto pintará una opción por registro, y solo marcará como selected aquellos en que GetMeses.Mes equivalga a session.Mes

No uso messenger, pero me encontrarás en el foro a menudo
__________________
M a l d i t o F r i k i
  #5 (permalink)  
Antiguo 31/01/2003, 10:03
 
Fecha de Ingreso: noviembre-2002
Mensajes: 1.135
Antigüedad: 21 años, 5 meses
Puntos: 2
mira esto a ver si nos ayuda...

yo tengo un valor por defecto establecido en la variable de sesion (Session.Mes) y quiero que ese valor aparezca en el campo del formulario (select) como predeterminado.
Si cambio el valor del select del formulario (mes) recargo la pagina actual para mostrar unos determinados registros dependiendo de ese control. Para ello utilizo al principio del body:

<cfparam name="Form.meses" default="#Session.Mes#">
<cfset Session.Mes=#Form.meses#>

pero me parece que ya se que quieres decir...

gracias
  #6 (permalink)  
Antiguo 05/02/2003, 02:22
 
Fecha de Ingreso: noviembre-2002
Mensajes: 1.135
Antigüedad: 21 años, 5 meses
Puntos: 2
De esta forma no me funciona!!!

En una pagina doy valor a 2 variables de sesion de esta forma:

<cfinclude template="fechas.cfm">
<!--MesActual y AnoActual son variables creadas en fechas.cfm -->
<cfset Session.Mes="#MesActual#">
<cfset Session.Ano="#AnoActual#">

esta pagina es redirigida a otra donde segun estos valores se colocarán como predeterminados en unos cuadros desplegables.
Pues no funciona, sé que tienen valor ya que los muestro con <cfoutput> para comprobarlo.
En cambio, si en la pagina anterior coloco ésto:

<cfinclude template="fechas.cfm">
<cfset Session.Mes="Febrero">
<cfset Session.Ano="2003">

si que funciona, ¿sabeis por qué ocurre esto?
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 20:13.