Foros del Web » Programando para Internet » ASP Clásico »

list menu dinamico

Estas en el tema de list menu dinamico en el foro de ASP Clásico en Foros del Web. Que tal estoy haciendo un catalogo de productos pero cada producto tiene diferentes medidas o especificaciones asi que uso un list menu para cada producto, ...
  #1 (permalink)  
Antiguo 13/11/2004, 14:38
 
Fecha de Ingreso: octubre-2003
Mensajes: 113
Antigüedad: 21 años, 7 meses
Puntos: 0
list menu dinamico

Que tal estoy haciendo un catalogo de productos pero cada producto tiene diferentes medidas o especificaciones asi que uso un list menu para cada producto, pero algunos tienen 10 tipos y otros tienen 5 tipos.

<%
producto = Request("producto")
%>
<% select case(producto)
case 1
nombre="Bolsa para Basura"
opcion1="BOLSA CAMISETA C/1000"
opcion2="BOLSA P/BASURA 12-10 gl. C/500"
opcion3="BOLSA P/BASURA 12-16 G. C/500 1.35"
opcion4="BOLSA P/BASURA 12-16 GL. GRUESA C/5"
opcion5="BOLSA P/BASURA 24 X 33 Caja 500"
opcion6="BOLSA P/BASURA 33gl. c/100"
opcion7="BOLSA P/BASURA 46 GAL. C/100 1.35"
opcion8="BOLSA P/BASURA 48 GAL. 1.5 C/100"
opcion9="BOLSA P/BASURA 48GL. 20 kg."
opcion10="BOLSA P/BASURA 55 GAL C/100 1.35"
opcion11="BOLSA P/BASURA 7-10 GAL C/500 1.35"
numproductos=11

case 2
nombre="Bote para Basura"
opcion1="BOTE C/TAPA DE DOMO NEGRO 44gl."
opcion2="BOTE CHICO 4gl."
opcion3="BOTE P/BASURA 32GL"
opcion4="BOTE P/BASURA 7-10 GL."
opcion5="BOTE PARA BASURA 44 G. GRIS"
numproductos=5
end select
%>

ahora dependiendo que eligieron en el ASP anterior (# del producto) se carga el list menu pero quiero que se limite al total de especificaciones del que eligio

pero me marca error en la opcion value en donde ando mal?

<select name="opcion" size="." id="opcion">
<%
for a = 1 to numproductos
%>

------------------------------------------------------------
<option value="<%=opcion(a)%>"><%=opcion(a)%></option>
------------------------------------------------------------
Esta linea es la que marca el error

------------------------------------------------------------


<%
next
%> </select>
  #2 (permalink)  
Antiguo 13/11/2004, 14:50
Avatar de Immortal  
Fecha de Ingreso: septiembre-2004
Mensajes: 38
Antigüedad: 20 años, 8 meses
Puntos: 0
Utiliza una BD
aqui esta un ejemplo para desplegarlos en el combo

<select name="consulta" >
<OPTION> </OPTION>
<%
do while not rs_consulta.EOF%>
<OPTION> <%=rs_consulta.Fields("clave")%></OPTION>
<%
rs_consulta.MoveNext
loop
%>
</select>
este codigo te llenara el combo con los datos de la BD puedes poner los campos que quieras nada mas delimitalos con algo puede ser un frase o una (,) y de aqui nada mas te quedaria investigar las conexiones a las BD

Saludos
  #3 (permalink)  
Antiguo 13/11/2004, 15:00
 
Fecha de Ingreso: octubre-2003
Mensajes: 113
Antigüedad: 21 años, 7 meses
Puntos: 0
y para salir de la duda porque tengo ese problema???

porque no funciona de esa manera?
  #4 (permalink)  
Antiguo 14/11/2004, 03:25
Avatar de Immortal  
Fecha de Ingreso: septiembre-2004
Mensajes: 38
Antigüedad: 20 años, 8 meses
Puntos: 0
Posiblemente al asignar el valor a las variables opcion ya que estas son un string, trate de verificar esto pero en este momento mi server no funciona con asp ya que perdi mi chilisoft yo en estos dias te verifico bien ya que este en la maquina de mi trabajo donde si puedo correr asp pero intenta desplegarlos con un response.write "tu articulo" aunque no es recomendable ya que cuando necesites actualizar la pagina tendras mucho trabajo y con una BD nada mas cambias o insertas mas datos en los campos y el codigo sigue funcionando,
si necesitas ayuda con las bd mandame un mensaje y te mando unos ejemplos

Saludos
  #5 (permalink)  
Antiguo 14/11/2004, 03:32
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 23 años, 4 meses
Puntos: 98
Bueno, puedes hacerlo funcionar como tu lo piensas, pero me parece un poco raro el manejo que le quieres dar a esto, el consejo es bueno, utiliza una DB, pues te ahorrarás muchas líneas de código innecesarias, ahora, segun veo, dependiendo de una variable, estás dimensionando otras, las cuales pretendes imprimir, pero en realidad mediante el uso de opcion(a) estás trantando de imprimir los índices de un arreglo, que no existe...
Para hacer lo que tu pretendes, aunque repito, que no se me hace la mejor solución, puedes valerte del uso de la función eval("variable_como_string"), que básicamente al pasarle un string con el nombre de la variable en cuestión, buscará el valor de dicha variable, para lo cual puedes hacer mediente tu for lo siguiente:
Código:
<select name="opcion" size="." id="opcion">
<%
for a = 1 to numproductos
%>
  <option value="<%=eval("opcion" & a)%>"><%=eval("opcion" & a)%></option>
<%
next 
%> </select>

Salu2,
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
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 08:51.