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

Paso de Variables de Session en un pop up

Estas en el tema de Paso de Variables de Session en un pop up en el foro de ASP Clásico en Foros del Web. Mira tengo un problema con las variables de session en un pop up desde una pagian genero un pop up para llenar un campo en ...
  #1 (permalink)  
Antiguo 30/09/2005, 10:38
 
Fecha de Ingreso: agosto-2005
Mensajes: 15
Antigüedad: 19 años, 8 meses
Puntos: 0
Paso de Variables de Session en un pop up

Mira tengo un problema con las variables de session en un pop up desde una pagian genero un pop up para llenar un campo en un select pero no me pasa el valor el escript donde esta el select es el siguiente

<%@ LANGUAGE="VBScript" %>
<%
Option Explicit
'Buffer the response, so Response.Expires can be used
Response.Buffer = TRUE
%>
<?xml version="1.0"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%
Session("task") = Request.QueryString("select")
ir2= Request.QueryString("select")
%>

<%
Call CheckRep(cnnDB, sid)
dim id
id = Request.QueryString("id")
dim rstServicios,rstSerList
dim i, i2
i= request.QueryString("select")
%>

<head>
<title><%=lang(cnnDB, "HelpDesk")%> - <%=lang(cnnDB, "NewProblem")%></title>
<link rel="stylesheet" type="text/css" href="../default.css">
<script language="javascript">
function mega(a)
{
msg= "Hola: "+ a
alert(msg);
}

function cerrarpop()
{
document.close()
}
</script>

</head>
<body>
<%
Dim capser, ir2, aux
capser = Request.QueryString("session("" task "")")
%>
<form name="form1" method="get" action="">
<table width="600" border="0" class="Narrow">
<tr class="Head1">
<td><%=lang(cnnDB, "subdef")%></td>
</tr>
<tr class="Body1">
<td>
<select name="select">
<OPTION VALUE="0" SELECTED><%=lang(cnnDB, "subdef")%></OPTION>
<%
Set rstSerList = SQLQuery(cnnDB,"Select iddef, taskname, rep_id FROM sub_task WHERE id_subcat = " &cstr( id) )
If Not rstSerList.EOF Then
Do While Not rstSerList.EOF
'session("task") = rstSerList("iddef")
%>
<OPTION VALUE="<%=rstSerList("iddef")%>">
<% = rstSerList("taskname") %></OPTION>
<%
rstSerList.MoveNext
Loop
End If
%>
</select></td>
</tr>
<tr align="center">
<td>
<%
Session("task") = Request.QueryString("select")
rstSerList.close
%>
<input type="submit" name="submit" value="Aceptar" onClick="window.close()">
</td>
</tr>
</table>
</form>
</body>
</html>

Cuando se cierra la ventana quedo en la misma pagina que lanzo el pop up, alguien me podria colaborar y decirme porque no me pasa el parametro bien Gracias
__________________
JOSE GARCIA :-) :arriba:
  #2 (permalink)  
Antiguo 30/09/2005, 10:46
 
Fecha de Ingreso: septiembre-2005
Mensajes: 7
Antigüedad: 19 años, 7 meses
Puntos: 0
Por lo q interpreto es q tienes un formulario inicial en una ventana. Desde ahi abres una nueva ventana donde seleccionas algo, lo guardas en una variable session y luego deseas q en la ventana principal s modifique, es asi?

Si he entendido bien tu pregunta, la solucion es q tienes q recargar la pagina principal dsd el pop up pq su valor ha sido leido al abrir la pagina y no se ha actualizado. Para recargar desde el pop up lo puedes hacer con este codigo JavaScript:

<script language="javascript">
window.opener.parent.top.location.reload();
</script>

No se si t servira...
  #3 (permalink)  
Antiguo 30/09/2005, 11:10
Avatar de FiNo  
Fecha de Ingreso: octubre-2004
Ubicación: Costa Rica
Mensajes: 265
Antigüedad: 20 años, 7 meses
Puntos: 1
Lo que quieres es que la variable session tome el valor de ese select?
  #4 (permalink)  
Antiguo 30/09/2005, 12:23
 
Fecha de Ingreso: agosto-2005
Mensajes: 15
Antigüedad: 19 años, 8 meses
Puntos: 0
Lo que necesito es capturar el valor del select y pasar ese valor a mi formulario principal si pereder nigun dato que se haya colocado en mi formulario principal.
__________________
JOSE GARCIA :-) :arriba:
  #5 (permalink)  
Antiguo 30/09/2005, 12:28
 
Fecha de Ingreso: agosto-2005
Mensajes: 15
Antigüedad: 19 años, 8 meses
Puntos: 0
<script language="javascript">
window.opener.parent.top.location.reload();
</script>

Este script se ejectuta en el pop up o en mi formulario principal.
__________________
JOSE GARCIA :-) :arriba:
  #6 (permalink)  
Antiguo 30/09/2005, 14:07
Avatar de FiNo  
Fecha de Ingreso: octubre-2004
Ubicación: Costa Rica
Mensajes: 265
Antigüedad: 20 años, 7 meses
Puntos: 1
Fijate si este ejemplo te sirve:

Ventana principal
<form action="" method="post" name="form" id="form">
<input name="nombre_txt" type="text" id="nombre_txt">
<a href=# onClick=window.open('pop_up.asp','nom','scrollbars =yes,width=300,height=300')>Ventana Pop-up</a></form>


--------------------------------
Ventana pop_up

<% valor = "valor_a_pasar"%>
<a href="#" onclick="opener.document.form.nombre_txt.value='<% =valor%>';javascript:window.close()">pasar valor</a>

Y ahi en valor, meteria el dato del select.
  #7 (permalink)  
Antiguo 03/10/2005, 08:29
 
Fecha de Ingreso: agosto-2005
Mensajes: 15
Antigüedad: 19 años, 8 meses
Puntos: 0
Cita:
Iniciado por FiNo
Fijate si este ejemplo te sirve:

Ventana principal
<form action="" method="post" name="form" id="form">
<input name="nombre_txt" type="text" id="nombre_txt">
<a href=# onClick=window.open('pop_up.asp','nom','scrollbars =yes,width=300,height=300')>Ventana Pop-up</a></form>


--------------------------------
Ventana pop_up

<% valor = "valor_a_pasar"%>
<a href="#" onclick="opener.document.form.nombre_txt.value='<% =valor%>';javascript:window.close()">pasar valor</a>

Y ahi en valor, meteria el dato del select.
Mira ejecute tu codigo pero tengo una duda, en la pagina principal tengo es un boton para generar el pop up ya que de ahi viene un valor para el select, cuando abre el pop up le puse el codigo del pop up pero no hace la actualizacion ni cierra la pagina, se queda en el pop up y me cambia el valor del indice de la consulta, si prosigo no me cambia el valor en la ventana principal por lo tanto que mas me hara falta te envio la manera como hago llamado del pop up desde mi formulario principal
Esto va al pricipio de la pagina principal
<head>
<link rel="stylesheet" type="text/css" href="../default.css">
<script language="JavaScript" type="text/javascript">
<!--
var ancho=350
var alto=200
var x=100
var y=300
var tid=0
var url= "scaling.asp?id="

function inicio()
{
tid = Listas.Sub_Categoria.options[Listas.Sub_Categoria.selectedIndex].value;
url = url + tid;
ventana = window.open(url, "_blank", "resizable,height=200,width=350,top=x,left=y,scree nX=x,screenY=y");
tid = 0;
url = "scaling.asp?id=";
}
// -->
</script>
</head>



<Form name="Listas" method="post" action="details.asp">
<Select Name="Categorias" Size="1"
onChange="ComponerLista (document.forms.Listas.Categorias[selectedIndex].value);" <% = strTextDisable %>>
<%
Dim rstcategories, cuenta, categoria, cat
Set rstcategories = SQLQuery (cnnDB, "SELECT DISTINCT * FROM CATEGORIES ORDER BY cname asc")
cuenta = 1
sw = 1
While Not rstcategories.EOF
%>
<Option Value="<%=rstcategories("category_id")%>"
<% If cuenta = 1 Then %>
SELECTED
<% End If %>>
<% = rstcategories("cname") %></Option>
<%
rstcategories.MoveNext
cuenta = cuenta + 1
Wend
rstcategories.Close
sw = 1
%>
</select>
</td>
</tr>
<tr class="Body1">
<td>
<b><%=lang(cnnDB, "Subcat")%></b>
</td>
<td>
<Select Name="Sub_Categoria" Size="1">
</Select>&nbsp<em>*</em>&nbsp&nbsp
<input type="button" value="<%=lang(cnnDB, "subdef")%>" onClick="inicio()">&nbsp <em>*</em></p>
<SCRIPT LANGUAGE="Javascript">
<!--
function Tupla ( campo1, campo2 )
{
this.campo1 = campo1;
this.campo2 = campo2;
}
<%
'Vamos a crear nuestros arrays de productos desde ASP
'El primer if detecta un cambio en la categoría para
'crear un nuevo array en Javascript

Set rstcategories = SQLQuery (cnnDB,"SELECT DISTINCT * FROM sub_categories ORDER BY sCategory_id, subcat_id")
cuenta=0
cat="basura"
While Not rstcategories.EOF
If cat<>rstcategories("scategory_id") Then
' cambio de categoria, empiezo a contar en 0
cuenta = 0
cat = rstcategories("scategory_id")
' además tengo que crear un nuevo array para la categoría
%>
var opciones<%=cat%> = new Array();
<%
End If
%>
opciones<%=cat%>[<%=cuenta%>]=new Tupla("<%=rstcategories("sname")%>","<%=rstcategor ies("subcat_id")%>");
<%
cuenta = cuenta + 1
rstcategories.MoveNext
Wend
%>
<%
'Limpiamos objetos
rstcategories.close
%>

var contador;

function ComponerLista ( array ) {
// Compone la lista dependiente a partir
// del valor de la opcion escogida en la lista "padre"
BorrarLista();
array = eval("opciones" + array);
for (contador=0; contador<array.length; contador++)
{
// añade elementos nuestro combobox
var optionObj = new Option( array[contador].campo1, array[contador].campo2 );
Listas.Sub_Categoria.options[contador] = optionObj;
} // for
} // ComponerLista

function BorrarLista() {
Listas.Sub_Categoria.length=0;
}

//Inicializamos
ComponerLista (1);

-->
</SCRIPT>
__________________
JOSE GARCIA :-) :arriba:
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:14.