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

Condicional al recibir responseText

Estas en el tema de Condicional al recibir responseText en el foro de Frameworks JS en Foros del Web. Hola quisiera ver si a alguien se le ocurre como tomar el valor de un ajax.responseText y ocuparlo en una condicional dejo el código para ...
  #1 (permalink)  
Antiguo 06/06/2007, 14:23
 
Fecha de Ingreso: febrero-2004
Ubicación: En Copiapó
Mensajes: 52
Antigüedad: 20 años, 2 meses
Puntos: 0
Exclamación Condicional al recibir responseText

Hola quisiera ver si a alguien se le ocurre como tomar el valor de un ajax.responseText y ocuparlo en una condicional dejo el código para ver si alguien ha hecho algo similar:

Código PHP:
function existe_carga(valor,nombre)
{
    var 
ajax nuevoAjax();
    var 
numero nombre;
    var    
numero numero.replace(/D/g,'');
    var 
guia_carga valor;
    var 
codigo_carga=document.getElementById("codigo_carga"+numero).value;
    var 
sim_carga=document.getElementById("sim_carga"+numero).value;
            
        if(
guia_carga.value!='')
        {
        
ajax.open("GET","valida_carga.php?guia_carga="+guia_carga+"&codigo_carga="+codigo_carga+"&sim_carga="+sim_carga,true);
        
ajax.onreadystatechange=function(){
            if(
ajax.readyState==4)
                {
                if(
ajax.responseText==true){alert("ajax.responseText")};
                }
                                          }
                                          
        }
    
ajax.send(null)    

La idea es mandar un mensaje al comprobar si el texto del ajax.responseText es igual a SI lanzar un mensaje eso es lo que no he podido hacer. Gracias
__________________
:pirata:
  #2 (permalink)  
Antiguo 07/06/2007, 02:23
Avatar de ZiTAL  
Fecha de Ingreso: marzo-2004
Ubicación: Bermio (Bizkaia)
Mensajes: 1.545
Antigüedad: 20 años, 1 mes
Puntos: 62
Re: Condicional al recibir responseText

se supone que el valida_carga.php?gu... debe de generar un valor de vuelta, puede ser cualquier cosa, true, false como "HOLA MUNDO", basta con:

Código:
if(ajax.responseText=='SI')
{
 //
}
else if(ajax.responseText=='NO')
{
 //
}
else if(ajax.responseText=='NO LO SE')
{
 //
}
else
{
 //
}
y en el PHP poner sus correspondientes echo's
__________________
http://zital.no-ip.org
____________________

Euskerie ahuen eta bijotzan
  #3 (permalink)  
Antiguo 07/06/2007, 07:27
 
Fecha de Ingreso: febrero-2004
Ubicación: En Copiapó
Mensajes: 52
Antigüedad: 20 años, 2 meses
Puntos: 0
Re: Condicional al recibir responseText

Sabes no me funciona no se que puede ser dejo el código de la función ajax y el codigo php

Esta es la funcion ajax
if(ajax.readyState==4)
{
if(ajax.responseText=='SI'){alert("Registro ya ingresado")};
}

Este es el php
Código PHP:
$sql=mysql_query("select * from tbl_carga where guia_carga='".$_GET['guia_carga']."' && sim_carga='".$_GET['sim_carga']."' && codigo_carga='".$_GET['codigo_carga']."' ");
    
$num_rows=mysql_num_rows($sql);
      if(
$num_rows==0)
              {
            echo 
"NO";    
              }
       else
               {
            echo 
"SI"
            

He probado mostrando lo recibido en un alert y me envia SI y NO segun corresponda ahora no se porque cuando realizo un if (responseText=='SI')... no funciona bien. Gracias
__________________
:pirata:
  #4 (permalink)  
Antiguo 07/06/2007, 07:34
Avatar de ZiTAL  
Fecha de Ingreso: marzo-2004
Ubicación: Bermio (Bizkaia)
Mensajes: 1.545
Antigüedad: 20 años, 1 mes
Puntos: 62
Re: Condicional al recibir responseText

No se pero prueba a separar un poco los corchetes, de todas formas el ; no es ahi:

Código:
if(ajax.responseText=='SI'){alert("Registro ya ingresado")};
sera asi:
Código:
if(ajax.responseText=='SI'){alert("Registro ya ingresado");}
pero prueba asi:
Código:
if(ajax.responseText=='SI')
 { 
  alert("Registro ya ingresado");
 }
aunque el ; no es necesario, supongo que si lo pones en un sitio donde no es, te dara algun que otro fallito.

suerte
__________________
http://zital.no-ip.org
____________________

Euskerie ahuen eta bijotzan
  #5 (permalink)  
Antiguo 07/06/2007, 10:20
 
Fecha de Ingreso: febrero-2004
Ubicación: En Copiapó
Mensajes: 52
Antigüedad: 20 años, 2 meses
Puntos: 0
Exclamación Re: Condicional al recibir responseText

Nada aun no funciona , no entiendo porque no si al mostrar el alert(ajax.responseText) funciona ok y muestra SI cargado hacia la izquierdo eso si.
Ayuda please.
__________________
:pirata:

Última edición por ozk4r; 07/06/2007 a las 10:55
  #6 (permalink)  
Antiguo 08/06/2007, 03:47
 
Fecha de Ingreso: mayo-2005
Mensajes: 188
Antigüedad: 18 años, 11 meses
Puntos: 6
Re: Condicional al recibir responseText

¿Hay alguna línea en blanco en un PHP después del ?> ? Puede ser que la respuesta se estuviera enviando con blancos (espacios o saltos). Esto con el alert() no lo verías, pero el if sí.
  #7 (permalink)  
Antiguo 08/06/2007, 03:51
Avatar de ZiTAL  
Fecha de Ingreso: marzo-2004
Ubicación: Bermio (Bizkaia)
Mensajes: 1.545
Antigüedad: 20 años, 1 mes
Puntos: 62
Re: Condicional al recibir responseText

he visto otro error:

Código PHP:
               {
            echo 
"SI"
            

debería ser:

Código PHP:
               {
            echo 
"SI";
            } 
__________________
http://zital.no-ip.org
____________________

Euskerie ahuen eta bijotzan
  #8 (permalink)  
Antiguo 08/06/2007, 07:36
 
Fecha de Ingreso: febrero-2004
Ubicación: En Copiapó
Mensajes: 52
Antigüedad: 20 años, 2 meses
Puntos: 0
Re: Condicional al recibir responseText

Si la comilla simple ya lo habia realizado y no hay espacios en blanco al final me decidi por generar una capa por textbox y de esa manera mostrar el responseText.innerHTML

de esta manera


if(ajax.readyState==4)
{
document.getElementById("divResultado"+numero).inn erHTML=ajax.responseText;
}

siendo numero el valor de la linea generada dinamicamente

Gracias
__________________
:pirata:
  #9 (permalink)  
Antiguo 18/06/2010, 13:32
 
Fecha de Ingreso: febrero-2010
Ubicación: chile
Mensajes: 9
Antigüedad: 14 años, 2 meses
Puntos: 0
Respuesta: Condicional al recibir responseText

efectivamente responseText recibe por algun motivo el texto con espacios en blanco, lo que yo hice fue quitarlos asi.

Código HTML:
function loginReply() {
if(http.readyState == 4){
var response = http.responseText;
//quito espacios en blanco
var respuesta = cadena.replace(/(^\s*)|(\s*$)/g,"");
alert(respuesta);
if(respuesta == 0){
document.getElementById('login_response').innerHTML = 'Datos Erroneos!';
} else {
document.getElementById('login_response').innerHTML = 'Bienvenido '+respuesta;
}
}
}
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.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 12:54.