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

Pregunta sobre XMLHTTPREQUEST

Estas en el tema de Pregunta sobre XMLHTTPREQUEST en el foro de Frameworks JS en Foros del Web. Holas.. tengo una duda debido a mi poco conocimiento al respecto... por que es necesario crear varias instancias del objeto XMLHTTPREQUEST como por ejemplo en ...
  #1 (permalink)  
Antiguo 12/10/2007, 03:23
 
Fecha de Ingreso: febrero-2007
Mensajes: 70
Antigüedad: 17 años, 2 meses
Puntos: 1
Pregunta sobre XMLHTTPREQUEST

Holas..
tengo una duda debido a mi poco conocimiento al respecto...

por que es necesario crear varias instancias del objeto XMLHTTPREQUEST como por ejemplo en este codigo:

Código:
function ajaxFunction01()
  {
  var xmlHttp;
  try
    {
    // Firefox, Opera 8.0+, Safari
    xmlHttp=new XMLHttpRequest();
    return xmlHttp;
    }
  catch (e)
    {
    // Internet Explorer
    try
      {
      xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
      return xmlHttp;
      }
    catch (e)
      {
      try
        {
        xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
        return xmlHttp;
        }
      catch (e)
        {
        alert("tu navegador no soporta AJAX!");
        return false;
        }
      }
    }
  }
function ajaxFunction02()
  {
  var xmlHttp;
  try
    {
    // Firefox, Opera 8.0+, Safari
    xmlHttp=new XMLHttpRequest();
    return xmlHttp;
    }
  catch (e)
    {
    // Internet Explorer
    try
      {
      xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
      return xmlHttp;
      }
    catch (e)
      {
      try
        {
        xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
        return xmlHttp;
        }
      catch (e)
        {
        alert("tu navegador no soporta AJAX!");
        return false;
        }
      }
    }
  } 

function ajax1()
{
    var nombre; 
    nombre = document.getElementById('nombre').value;
    var ajax;
    ajax = ajaxFunction01();  //funcion que crea instancia del objeto

    ajax.open("POST","procesa.php",true);
    ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    ajax.send("nombre="+nombre);
  
}
function ajax2()
 {
    var ajax;
    ajax=ajaxFunction02();  //tambien crea una instancia del objeto
    ajax.onreadystatechange=function()
      {
      if(ajax.readyState==4)
        {
        document.getElementById('contenedor').innerHTML=ajax.responseText;
        }
      }
     }
por ejemplo en este codigo existe las funciones:
ajaxfunction01
ajaxfunction02
ambas crean una instancia del objeto XMLHTTPREQUEST, por que no crear una sola y usar esa en en ambas funciones, tanto en ajax1 como en ajax2...???

se que no se puede pero por que.. no he encontrado la respuesta en internet

gracias y saludos
  #2 (permalink)  
Antiguo 12/10/2007, 07:15
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: Pregunta sobre XMLHTTPREQUEST

esas funciones son mias jejeje, simplemente porque solo se puede utilizar una en cada funcion, sino pruebalo y veras como no funciona ;)
__________________
http://zital.no-ip.org
____________________

Euskerie ahuen eta bijotzan
  #3 (permalink)  
Antiguo 12/10/2007, 13:38
 
Fecha de Ingreso: febrero-2007
Mensajes: 70
Antigüedad: 17 años, 2 meses
Puntos: 1
Re: Pregunta sobre XMLHTTPREQUEST

Si, las funciones son tuyas.. son las del chat... que estaba revisando algunas cosas y me entro esa duda... y no lo postié en el mismo tema por que en realidad era una pregunta mas teorica que sobre el chat en sí... gracias por responder.

osea que si en una pagina tengo dos formularios, independiente uno del otro.. debo crear una instancia del objeto XMLHTTPREQUEST para cada uno en caso que quiera usar ajax en los 2?? por que encuentro medio engorroso escribir el mismo codigo tantas veces en una aplicación, siendo que el codigo siempre es igual


saludos
  #4 (permalink)  
Antiguo 13/10/2007, 04:04
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: Pregunta sobre XMLHTTPREQUEST

no se otra forma de acerlo, si alguien sabe otra forma que lo postee por favor ;)
__________________
http://zital.no-ip.org
____________________

Euskerie ahuen eta bijotzan
  #5 (permalink)  
Antiguo 13/10/2007, 06:00
 
Fecha de Ingreso: agosto-2007
Ubicación: Maracaibo, Venezuela
Mensajes: 416
Antigüedad: 16 años, 8 meses
Puntos: 10
Re: Pregunta sobre XMLHTTPREQUEST

¿Usa PHP para que incluya código y tu solo escribas <?php include('codigorepetido.php');?>?
  #6 (permalink)  
Antiguo 13/10/2007, 06:11
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: Pregunta sobre XMLHTTPREQUEST

si pero las funciones se llaman de una forma diferente:

01,02, 03, se podria hacer lo que tu dices pero pasandole una variable por GET que le diga que funcion crear,ejemplo:

<?php
include("ajax.php?id=1");
?>
y este crearia la funcion ajaxfunction1() por ejemplo.

Otra forma seria con el mismo codigo creara desde el indice1 hasta el valor que le indiques:

<?php
include("ajax.php?id=5");
?>

y asi con un for crear 5 estancias de la funcion xmlhttprequest

;)
__________________
http://zital.no-ip.org
____________________

Euskerie ahuen eta bijotzan
  #7 (permalink)  
Antiguo 16/10/2007, 01:53
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: Pregunta sobre XMLHTTPREQUEST

ya encontre la solución:
Código:
var ajax;
ajax= new ajaxFunction();
ya lo he posteado en el tema del chat, pero por si acaso ;)
__________________
http://zital.no-ip.org
____________________

Euskerie ahuen eta bijotzan
  #8 (permalink)  
Antiguo 16/10/2007, 16:45
 
Fecha de Ingreso: febrero-2007
Mensajes: 70
Antigüedad: 17 años, 2 meses
Puntos: 1
Re: Pregunta sobre XMLHTTPREQUEST

si asi es.. lo encontre en un tutorial por ahí... gracias por responder...
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 09:04.