Foros del Web » Programando para Internet » Javascript »

Problema con Combos dependientes

Estas en el tema de Problema con Combos dependientes en el foro de Javascript en Foros del Web. Por favor tengo un problema con un select dependiente. He buscado este script que funciona en IE y en Firefox. Pero aunque más o menos ...
  #1 (permalink)  
Antiguo 09/02/2009, 06:00
 
Fecha de Ingreso: junio-2003
Ubicación: Santiago de Compostela
Mensajes: 603
Antigüedad: 21 años
Puntos: 0
Problema con Combos dependientes

Por favor tengo un problema con un select dependiente. He buscado este script que funciona en IE y en Firefox.
Pero aunque más o menos entiendo lo que hace, me falla.
Lo que quiero es que el primer select me devuelva un listado de todas las empresas que hay en la tabla empresas. Hasta ahí sin problemas.
Según la empresa que escoja me devuelva todas las familias de la tabla familias que tienen el campo id_empresa con el valor que teoricamente se recoge del primer select, pero no sale.
Esto está hecho e asp clasico pero el problema yo creo que está en el javascript, por eso lo publico en este foro.

Pueden ayudarme a saber donde está el error?
Código:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<%
response.Expires=0
Response.AddHeader "PRAGMA", "NO-CACHE" 
if session("autorizacion")=-1 or session("autorizacion")="" then 
    response.redirect "/login.asp"
end if
%>

<HTML>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Modificar/Ver Familia</title>
<link href="../../css/estilos_extranet.css" rel="stylesheet" type="text/css">

<script language = "JavaScript">
<%
Set Conn= Server.CreateObject("ADODB.Connection")
Set Command= Server.CreateObject("ADODB.Command")
Conn.open "DSN=dentalvita.com"
Command.ActiveConnection=Conn 
Command.CommandType=adCmdText 
Command.CommandText= "SELECT * FROM usuarios WHERE nombreusuario = '" & Request("nombreusuario") & "'" 
Set RsUsuarios=Command.Execute () 

productos_Sql = "SELECT distinct referencia_familia, id, id_empresa, nombre_familia from familias"
    set RsFamilias = CreateObject("ADODB.Recordset")
    RsFamilias.Open productos_Sql, Conn
x=0

Command.CommandText= "SELECT * FROM empresas order by id_empresa DESC" 
Set RsEmpresas=Command.Execute ()
%>

//FUNCION DE COMBO BOX COMBINADO

function sublist(inform, selecteditem)
 {
    inform.subcategory.length = 0

    <%
     count= 0
     y=0
     do while not RsFamilias.eof
    %>

    x = <%= trim(y) %>;

    subcat = new Array();
    subcategorys = "<%=(RsFamilias("nombre_familia")) %>";
    subcategoryof = "<%=(RsFamilias("referencia_familia"))%>";
    subcategoryid = "<%=(RsFamilias("nombre_familia"))%>";
    subcat[x,0] = subcategorys;
    subcat[x,1] = subcategoryof;

    if (subcat[x,1] == selecteditem) {
      var option<%= trim(count) %> = new Option(subcat[x,0], subcat[x,2]);
      inform.subcategory.options[inform.subcategory.length]=option<%= trim(count)%>;
     }
    <%
      count = count + 1
      y = y + 1
      RsFamilias.movenext
     loop
    RsFamilias.close
    %>
}
</script>
</head>

<!-- #INCLUDE file="../../adovbs.asp" -->
<%
nombreusuario=RsUsuarios("nombreusuario")
%>
 <BODY scroll="auto">
 <%if session("autorizacion")=1 then%>
 <form action="../../gestion_familias/modificar_ver/actualizar_familias.asp?nombreusuario=<%=nombreusuario%>&id_empresa=<%=RsEmpresas("id_empresa")%>" method="post" name="form1">
  <table width="768" class="GESTION" align="center" border="0" cellpadding="0" cellspacing="0">
   <tr>
      <td colspan="2" valign="middle" class="CELDA"><table width="100%" border="0" cellpadding="0" cellspacing="0" class="MENUS">
        <tr>
          <td rowspan="3"><img src="../../images/menus/familias/ver_modificar_familias.gif" width="743" height="100"></td>
          <td valign="top">&nbsp;</td>
        </tr>
        <tr>
          <td><a href="../../gestion_familias/menu_familias.asp?nombreusuario=<%=request.QueryString("nombreusuario")%>"><img src="../../images/iconos/menu_principal.gif" alt="Menu Familias" width="25" height="23" border="0"></a></td>
        </tr>
        <tr>
          <td valign="bottom">&nbsp;</td>
        </tr>
      </table></td>
    </tr>
    <tr>
      <td colspan="2" valign="middle" class="MENSAJESRELLENAR">&nbsp;</td>
    </tr>
    <tr>
      <td colspan="2" valign="middle" class="MENSAJESRELLENAR">Introduzca un valor sobre el criterio de b&uacute;squeda a seleccionar </td>
    </tr>
    <tr>
      <td colspan="2" valign="middle" class="MENSAJESRELLENAR">&nbsp;</td>
    </tr>
    <tr>
      <td valign="middle" class="CELDA">Nombre Empresa </td>
      <td valign="top" class="celda">
      <select name="id_empresa" class="SELECT" id="id_empresa" onChange = "javascript:sublist(this.form, id_empresa.value);">
        <%RsEmpresas.movefirst
        do while not RsEmpresas.eof%>
        <option value="<%=RsEmpresas("id_empresa")%>" selected><%=RsEmpresas("nombre_empresa")%></option>
        <%RsEmpresas.movenext
        loop%>
      </select>
      </td>
    </tr>
    <tr>
      <td width="15%" valign="middle" class="CELDA">Familia</td>
      <td width="85%" valign="top" class="celda">
      <select name="subcategory" class="SELECT" id="subcategory">
          <option selected value="none"></option>
      </select>
        <input name="submit" type="submit" class="BOTONES_FORMULARIO" value="Ver Familia"></td>
    </tr>
    
    <tr>
      <td colspan="2" valign="top"></td>
    </tr>
  </table>
</form>
<%
RsUsuarios.close
'RsFamilias.close
RsEmpresas.close
conn.close
Set RsUsuarios=nothing
Set RsEmpresas=nothing
Set RsFamilias=nothing
Set Conn=nothing
end if%>
</BODY>
</HTML>
Gracias
__________________

Espero haber aprendido algo de tí.
A mi padre.

Última edición por ciberpata; 09/02/2009 a las 06:06
  #2 (permalink)  
Antiguo 09/02/2009, 06:30
venkman
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Problema con Combos dependientes

¿Qué es lo que intentas hacer cuando escribes subcat[x,0]?


Por lo demás, en lugar de decir "me falla", o "no funciona", podrías describir qué es lo que ocurre, qué es lo que no funciona, si da algún error o lo que sea.
  #3 (permalink)  
Antiguo 09/02/2009, 06:32
 
Fecha de Ingreso: junio-2003
Ubicación: Santiago de Compostela
Mensajes: 603
Antigüedad: 21 años
Puntos: 0
Respuesta: Problema con Combos dependientes

Ya esta arreglado. Gracias
__________________

Espero haber aprendido algo de tí.
A mi padre.
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 16:11.