Foros del Web » Programando para Internet » Javascript » Frameworks JS »

secuencia interrumpida

Estas en el tema de secuencia interrumpida en el foro de Frameworks JS en Foros del Web. buenas tardes, ejecuto este código en una llamada ajax a una página asp: <% mensajes[mensajes.length]="Su petición se ha procesado."; mensajes[mensajes.length]="Recibirá un mensaje de correo electrónico ...
  #1 (permalink)  
Antiguo 08/04/2009, 10:03
 
Fecha de Ingreso: julio-2002
Mensajes: 813
Antigüedad: 21 años, 9 meses
Puntos: 2
secuencia interrumpida

buenas tardes,

ejecuto este código en una llamada ajax a una página asp:

<%
mensajes[mensajes.length]="Su petición se ha procesado.";
mensajes[mensajes.length]="Recibirá un mensaje de correo electrónico cuando esté disponible la respuesta.";
enviamensajes();
Response.Redirect("http://www.midominio.es");
%>

la función incluida en la página asp con un include: enviamensajes.asp, tiene este código:
<%
function enviamensajes()
{
var alerta = 'mensajes,';
for ( i=0;i<mensajes.length;i++ )
{
alerta += mensajes[i] + ',';
}
alerta = alerta.substr(0,alerta.length-1);
Response.Write(alerta);
}
%>

esta función incluida es la que no se ejecuta completa, simplemente redirecciona, y me gustaría dentro del proceso ajax que utilizo informar al usuario, y despues tras el alert() que monto tras el Response.Write(alerta) de la función enviamensajes(), realizar la redirección,

es decir, con ajax no se puede enviar una respuesta al usuario, y despues redireccionar la página? ¿podría ser una cuestión de tiempo, es decir, cuando envío la respuesta, antes de recibirla, se redirecciona la página, y por eso se interrumpe la respuesta?

(Hasta ahora, esta situación la he resuelto obligando al usuario a pulsar con un boton para continuar, es decir, no redirecciono, muestro un boton al usuario enviado en la respuesta, la solución clasica de las aplicaciones, informo que el proceso se ha realizado y muestro un boton para continuar)

un saludo,
josé carlos.
  #2 (permalink)  
Antiguo 08/04/2009, 13:37
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: secuencia interrumpida

Hola evoarte,

Lo que pasa es que la redirección se hace sobre el hilo ajax, por lo que el browser no hace el cambio, para forzar el cambio en el browser desde ajax tienes que usar window.location = "urldestino";

Saludos.
  #3 (permalink)  
Antiguo 08/04/2009, 13:55
 
Fecha de Ingreso: julio-2002
Mensajes: 813
Antigüedad: 21 años, 9 meses
Puntos: 2
Respuesta: secuencia interrumpida

lo que quiero decir es que hace la redirección, pero no muestra los mensajes,
tal y como tengo el código para mostrar los mensajes tengo que quitar la línea que hace la redirección,

un saludo,
josé carlos.
  #4 (permalink)  
Antiguo 08/04/2009, 18:16
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: secuencia interrumpida

Es por eso mismo, la redirección la haces desde el server y para que se muestren debes de hacerlo desde el cliente.

Saludos.
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 20:59.