hola y saludos. Tengo un gran problema. Estoy utilizando dos combos dependientes, los cuales estan relacionados a traves de una bd en access. Cuando selecciono uno de los elementos del combo, cambia autioamaticamente el valor en el otro combo relacionado con el otro valor. Eso me lo hace, pero el problema esta en que yo no quiero q me selecciione todos los elementos de la bd, sino unos que cumplan con una condicion especifica. He realizado consultas con if,con sql, y no me toma la condicion. De todos modos les mandio el codigo para que vean lo q estoy haciendo y si me pueden ayudar:
<SCRIPT ID=clientEventHandlersJS LANGUAGE=javascript>
<!--
function select1_onchange() {
// Este script asigna el valor seleccionado al campo hidden
// del form y hace el submit. Esto provoca que se genere una
// variable que recojo del objeto Request.
form2.marca.value = form1.select1.value;
form2.submit();
}
//-->
</SCRIPT>
</HEAD>
<BODY bgcolor="#336699">
<!--
Este form tiene un campo escondido que me permite cargarle un
valor, forzar el submit para que genere una variable en el objeto
Request.
//-->
<FORM name="form2" method="POST">
<INPUT type="hidden" name="marca">
</FORM>
<%
' Defino la conexion y el recordset
set conn = server.CreateObject("ADODB.Connection")
set rs = server.CreateObject("ADODB.Recordset")
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & SERVER.MApPath("Bases de Datos\San Ignacio de Loyola.mdb"))
set rs = CreateObject("ADODB.Recordset")
rs.Open "Acceso_PyR", conn,1
rs.movefirst
do while rs.eof=false
if c=rs.fields(0) then
' Armo string de conexion y lo abro.
%>
<CENTER>
<P align="center"><font face="Verdana" size=3 color="white"><b>EJEMPLO DE CARGA DE COMBOS DEPENDIENTES</b></font></p>
<HR>
<!--
Este es el form que se le presenta al usuario y solicita los datos
//-->
<FORM name="form1" method="GET">
<select name="select1" language=javascript onChange="return select1_onchange()">
<option value="0">--Seleccione un Nombre--</option>
<%
set rs = conn.Execute("SELECT * FROM Alumno where 'Cedula_PyR="& (c)&"'")
While NOT rs.EOF
%>
<option value="<%=rs.Fields("Codigo_Alumno")%>" <%if Clng(Request.Form("Nombre_Alumno"))=rs.Fields("Cod igo_Alumno") then%>selected<%end if%>><%=rs.Fields("Nombre_Alumno")%></option>
<%
rs.MoveNext
Wend%>
</select>
<%
' Cierro y destruyo el recordset
rs.Close
set rs = Nothing
%>
<!--
El segundo select se arma en base al codigo de Marca que se envio
con el submit del form que contiene campos hidden.
//-->
<SELECT name="select2">
<OPTION value="0"></OPTION>
<%
set rs = conn.Execute("SELECT * FROM Alumno Where 'Codigo_Alumno=" & Request.Form("Marca")&"'")
While NOT rs.EOF
%>
<OPTION value="<%=rs.Fields("Nombre_Alumno")%>"<%if Trim(Request.Form("marca"))=rs.fields("Codigo_Alum no") then%>selected<%end if%>><%=rs.Fields("Codigo_Alumno")%></OPTION>
<%
rs.MoveNext
Wend
%>
</SELECT>
<%
'Cierro y destruyo el recordset
rs.Close
set rs = Nothing
'Cierro y destruyo la conexion
end if
rs.movenext
loop
conn.Close
set conn = Nothing
%>
<P>
</FORM>
</CENTER>
Gracias y saludos de antemano