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

javasript dentro de asp

Estas en el tema de javasript dentro de asp en el foro de ASP Clásico en Foros del Web. hola! tengo este codigo.... <Option <% if busqueda=true then ¿como podria meter aqui la llamada a una funcion de javascript? codigo=sQa.Fields.Item("SubPral").Value codigo=left(codigo,2) Response.Write(" value=" & ...
  #1 (permalink)  
Antiguo 24/09/2003, 04:52
Avatar de Mplus  
Fecha de Ingreso: agosto-2003
Ubicación: colgando de un trebol
Mensajes: 157
Antigüedad: 21 años, 8 meses
Puntos: 0
javasript dentro de asp

hola!

tengo este codigo....

<Option <% if busqueda=true then

¿como podria meter aqui la llamada a una funcion de javascript?
codigo=sQa.Fields.Item("SubPral").Value
codigo=left(codigo,2)
Response.Write(" value=" & codigo &" SELECTED")
else
response.write("selected value=""""none""""")
end if%>
></option>
__________________
Daría todo lo que sé por la mitad de lo que ignoro
  #2 (permalink)  
Antiguo 24/09/2003, 07:27
Avatar de nazkatuta  
Fecha de Ingreso: julio-2002
Ubicación: EH - BCN
Mensajes: 222
Antigüedad: 22 años, 9 meses
Puntos: 0
Hola Mplus,

prueba con esto y me dices...

<select name="sub1" id="sub1">
</select>




<%'CONSULTA PARA OBTENER LOS DATOS

productos_Sql = "SELECT * FROM Subsectores"
set rs = CreateObject("ADODB.Recordset")
rs.Open productos_Sql, Conn
x=0
%>
<script language="JavaScript">
// FUNCION DE COMBO BOX COMBINADO

function sublist(inform, selecteditem, combo2 )
{

eval("inform.sub" + combo2 + ".length=0");

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

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

subcat = new Array();
subcatagorys = "<%=(rs("Cod_Sub"))%>";
subcatagoryof = "<%=(rs("Cod_Sector"))%>";
subcatagoryid = "<%=trim(rs("Nom_Cs"))%>";
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,2], subcat[x,0]);

if (combo2== 1) {
inform.sub1.options[inform.sub1.length]=option<%= trim(count)%>;
}
if (combo2== 2) {
inform.sub2.options[inform.sub2.length]=option<%= trim(count)%>;
}
if (combo2== 3) {
inform.sub3.options[inform.sub3.length]=option<%= trim(count)%>;
}
}
<%
count = count + 1
y = y + 1
rs.movenext
loop
rs.close
%>
}

function seleccionSegundo(){
'Aki tienes que meter un codigo asp que tome los datos de la subcategoria seleccionada
' y con ese recordset rellenas la siguiente funcion en JavaScript
//esta funcion hay que llamarla con el evento del BODY onLoad. <body onLoad="seleccionSegundo">
subcat = new Array();
subcatagorys = "<%=(rs("Cod_Sub"))%>";
subcatagoryid = "<%=trim(rs("Nom_Cs"))%>";
subcat[0,0] = subcatagorys;
subcat[0,1] = subcatagoryid;

var nuevaOpcion = new Option(subcat[0,1], subcat[0,0]);
//asi darias valor al primer combo secundario, porque es sub1
inform.sub1.options[0]= nuevaOpcion;
}
</script>
__________________
Cita:
Gaur ere nahi nuke...
zure ondoan esnatu
  #3 (permalink)  
Antiguo 24/09/2003, 07:51
Avatar de Mplus  
Fecha de Ingreso: agosto-2003
Ubicación: colgando de un trebol
Mensajes: 157
Antigüedad: 21 años, 8 meses
Puntos: 0
si, puede q funcione..... voy a probarlo ahora pero....
no seria más facil volver a llamar a la funcion sublist cuando cargo la pagina x segunda vez, es decir, la funcion sublist es para cuando se produce un cambio en el primer combo me rellene un segundo, vale, cuando hago una busqueda, se recarga la pagina y al no haberse producido un cambio en el primer combo no me aparece nada en el segundo, con lo q no tengo nada q seleccionar.... no se si me explico
__________________
Daría todo lo que sé por la mitad de lo que ignoro
  #4 (permalink)  
Antiguo 24/09/2003, 07:54
Avatar de nazkatuta  
Fecha de Ingreso: julio-2002
Ubicación: EH - BCN
Mensajes: 222
Antigüedad: 22 años, 9 meses
Puntos: 0
joder, es cierto!...

llama a sublist en el evento onLoad del BODY, pasandole los parametros ke necesite... muchisimo mas sencillo asi.

es ke cuando libro me empano, jejeje.

ya me dirás.
__________________
Cita:
Gaur ere nahi nuke...
zure ondoan esnatu
  #5 (permalink)  
Antiguo 24/09/2003, 07:56
Avatar de nazkatuta  
Fecha de Ingreso: julio-2002
Ubicación: EH - BCN
Mensajes: 222
Antigüedad: 22 años, 9 meses
Puntos: 0
no no, rectificacion...

de esa forma lo que harías sería recargar el combo dependiente con todas las subcategorias, pero no te aparecería seleccionada la adecuada
__________________
Cita:
Gaur ere nahi nuke...
zure ondoan esnatu
  #6 (permalink)  
Antiguo 24/09/2003, 07:57
Avatar de Mplus  
Fecha de Ingreso: agosto-2003
Ubicación: colgando de un trebol
Mensajes: 157
Antigüedad: 21 años, 8 meses
Puntos: 0
ya... pero otra cosa, tengo tres combos, puedo llamar tres veces a la funcion en el unload del body?
__________________
Daría todo lo que sé por la mitad de lo que ignoro
  #7 (permalink)  
Antiguo 24/09/2003, 07:59
Avatar de nazkatuta  
Fecha de Ingreso: julio-2002
Ubicación: EH - BCN
Mensajes: 222
Antigüedad: 22 años, 9 meses
Puntos: 0
si que podrias, separando cada llamada por un ;

de todas formas es lo que te comento asi solo conseguirias que se cargaran con las subcategorias, peor no te aparecería seleccionada la correcta.
__________________
Cita:
Gaur ere nahi nuke...
zure ondoan esnatu
  #8 (permalink)  
Antiguo 24/09/2003, 08:01
Avatar de Mplus  
Fecha de Ingreso: agosto-2003
Ubicación: colgando de un trebol
Mensajes: 157
Antigüedad: 21 años, 8 meses
Puntos: 0
pero puedo seleccionarla despues en el option,no?
__________________
Daría todo lo que sé por la mitad de lo que ignoro
  #9 (permalink)  
Antiguo 24/09/2003, 08:02
Avatar de nazkatuta  
Fecha de Ingreso: julio-2002
Ubicación: EH - BCN
Mensajes: 222
Antigüedad: 22 años, 9 meses
Puntos: 0
si, con un javascript al final del todo que seleccione la option adecuada para cada subcategoria.

con eso ya lo tendrías.
__________________
Cita:
Gaur ere nahi nuke...
zure ondoan esnatu
  #10 (permalink)  
Antiguo 24/09/2003, 09:48
Avatar de Mplus  
Fecha de Ingreso: agosto-2003
Ubicación: colgando de un trebol
Mensajes: 157
Antigüedad: 21 años, 8 meses
Puntos: 0
vale...y como llamo a la funcion desde el onload del body? xq me da error de sintaxis, la funcion sublist tiene tres parametros, formulario, elemento seleccionado y combo2º....
__________________
Daría todo lo que sé por la mitad de lo que ignoro
  #11 (permalink)  
Antiguo 24/09/2003, 13:15
Avatar de nazkatuta  
Fecha de Ingreso: julio-2002
Ubicación: EH - BCN
Mensajes: 222
Antigüedad: 22 años, 9 meses
Puntos: 0
Hola
la llamada sería algo así

onload="sublist('nomFormulario','codigoCategoria1' ,1);sublist('nomFormulario','codigoCategoria2',2); sublist('nomFormulario','codigoCategoria3',3)"

De esta forma rellenarias los combos dependientes con las subcategorias correctas.

los datos de codigoCategoria1, codigoCategoria2 y codigoCategoria3 los tendrás que escribir con asp.

si tienes dudas ya sabes que aqui estamos 24h, jeje..

suerte
__________________
Cita:
Gaur ere nahi nuke...
zure ondoan esnatu
  #12 (permalink)  
Antiguo 25/09/2003, 02:21
Avatar de Mplus  
Fecha de Ingreso: agosto-2003
Ubicación: colgando de un trebol
Mensajes: 157
Antigüedad: 21 años, 8 meses
Puntos: 0
no funciona....no hace nada...

la funcion la tengo puesta asi

<body topmargin="0" leftmargin="0" bgcolor="#FFED1D"
<% if busqueda=true then%>
onload=" javascript;sublist('registro','<%=codsec1%>',1);su bl
ist('registro','<%=codsec2%>',2);sublist(
'registro','<%=codsec3%>',3);"
<%end if%>
>

y el resultado en html es este...

<body topmargin="0" leftmargin="0" bgcolor="#FFED1D"

onload=" javascript;sublist('registro','00',1);subl
ist('registro','00',2);sublist(
'registro','00',3);"

>

quizas sea xq el codigo es una cadena y la funcion no me lo esta cojiendo bien?
__________________
Daría todo lo que sé por la mitad de lo que ignoro
  #13 (permalink)  
Antiguo 25/09/2003, 02:29
Avatar de Mplus  
Fecha de Ingreso: agosto-2003
Ubicación: colgando de un trebol
Mensajes: 157
Antigüedad: 21 años, 8 meses
Puntos: 0
'inform.sub1' es nulo o no es un objeto ¿?....
__________________
Daría todo lo que sé por la mitad de lo que ignoro
  #14 (permalink)  
Antiguo 25/09/2003, 03:15
Avatar de nazkatuta  
Fecha de Ingreso: julio-2002
Ubicación: EH - BCN
Mensajes: 222
Antigüedad: 22 años, 9 meses
Puntos: 0
Hola Mplus,

parece que el problema está en como se le pasa el formulario sobre el que trabajar. Lo está tomando ahora mismo como que el formulario se llama "inform" en lugar de registro.

prueba con esto...

<body topmargin="0" leftmargin="0" bgcolor="#FFED1D"
<% if busqueda=true then%>
onload="sublist(document.all('registro'),'<%=codse c1%>',1);subl
ist(document.all('registro'),'<%=codsec2%>',2);sub list(
document.all('registro'),'<%=codsec3%>',3);"
<%end if%>

a ver si así lo pilla
__________________
Cita:
Gaur ere nahi nuke...
zure ondoan esnatu
  #15 (permalink)  
Antiguo 25/09/2003, 03:34
Avatar de Mplus  
Fecha de Ingreso: agosto-2003
Ubicación: colgando de un trebol
Mensajes: 157
Antigüedad: 21 años, 8 meses
Puntos: 0
ya lo he solucionado y funciona, lo paso sin comillas y lo coje perfectamente...jejeje...fuchicando se va aprendiendo
__________________
Daría todo lo que sé por la mitad de lo que ignoro
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:18.