Bueno pues antes una disculpa por no darme a entender jeje es solo que soy nuevo expresando problemas de programacion.
Bueno como te decia yo utilizo el javascript con la funcion sublista para llenar el segundo combobox dependiente con el metodo onchange que tiene el primer select.
A partir de este al seleccionar una opcion me llena el segundo combobox con elementos que toma con el llenado de un arreglo que muestro a continuacion:
Código:
function sublista(inform, selecteditem){
inform.subcatagory.length = 0
<%
dim count
count= 0
y=0
do while not rs_ncom.eof
%>
x = <%= trim(y) %>;
subcat = new Array();
//en subcatagorys lleno con los elementos creados a partir de la consulta
subcatagorys = "<%=replace(rs_ncom("str_nombcomdr"),"""","\""")%>";
//subcatagoryof aqui capto el segundo parametro de la funcion sublista
subcatagoryof = "<%=replace(rs_ncom("id_zonacomdr"),"""","\""") %>";
//y por ultimo subcatagoryid asigna el id del elemento de la sublista
subcatagoryid = "<%=replace(rs_ncom("id_comedor"),"""","\""") %>";
subcat[x,0] = subcatagorys;
subcat[x,1] = subcatagoryof;
subcat[x,2] = subcatagoryid;
if (subcat[x,1] == selecteditem) {
var option<%= trim(count) %> = new Option(subcat[x,0], subcat[x,2]);//en esta seccion creo el nuevo combobox
inform.subcatagory.options[inform.subcatagory.length]=option<%= trim(count)%>;
}
EJEMPLO:
Tengo los datos
Nombre Generacion Grupo Equipo Zona comedor Comedor
Luis alejandro chimal 2007-2009 A 2 Casco Aguascalientes
En la pantalla actualizar se abre con los combo box que poseen la informacion anterior
Del campo nombre a Zona comedor inicializa los valores correctamente al usar la siguiente sentencia:
Código:
<%
dim rsCatalogo
set rsCatalogo = server.CreateObject("ADODB.Recordset")
Sql = "select id_grupo, Nombre from c_gruposca where id_grupo in (2,3,4)"
rsCatalogo.Open Sql, condb%>
<select size="1" name="Grupo" style="font-family: Verdana; font-size: 8pt;width:100px; vertical-align:middle;">
<option value="" >---</option>
<%While Not rsCatalogo.EOF%>
<option value="<%=rsCatalogo("Nombre").Value%>" <% If (rsCatalogo("Nombre"))=(rs("Grupo")) Then %> <% Response.Write "Selected" %><%End If%>><%=rsCatalogo("Nombre").Value%></option>
<%
rsCatalogo.MoveNext
Wend
rsCatalogo.Close
%>
</select>
El texto subrayado de rojo hace una comparacion del valor que tiene el catalogo que llena los combobox contra la informacion que proviene del query principal es decir hago una comparacion de un query primario con los datos de la persona contra un query secundario que funciona como catalogo, cuando son iguales escribe selected en la opcion correspondiente.
dicha funcion solo la puedo aplicar comparando catalogo contra query principal pero en el java script no lo puedo inicializar
Todos los valores se inician correctamente en la pantalla update menos en el campo comedor por ser el combo dependiente del combo de campo Zona comedor. El problema radica en el javascript que anexo, algo asi aparece en mi pantalla:
Nombre Generacion Grupo Equipo Zona comedor Comedor
Luis alejandro chimal 2007-2009 A 2 Casco
Argentina
Cuando la informacion correcta deberia ser como aparece en el ejemplo de arriba.
Si pudieran ayudarme estaria super agradecido