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

crear una clase ajax

Estas en el tema de crear una clase ajax en el foro de Frameworks JS en Foros del Web. Necesito que la respuesta (texto) del objeto que tengo creado en ajax se pueda devolver como valor a una funcion. para explicarles un poco mejor ...
  #1 (permalink)  
Antiguo 23/03/2009, 20:34
 
Fecha de Ingreso: agosto-2007
Mensajes: 10
Antigüedad: 17 años, 4 meses
Puntos: 0
crear una clase ajax

Necesito que la respuesta (texto) del objeto que tengo creado en ajax se pueda devolver como valor a una funcion. para explicarles un poco mejor lo que quiero es que mi funcion en javascript que consulta a un servicio web y obtiene la respuesta pueda servirme para varios casos sin necesidad de volver a codificar donde se crea el XmlHttpRequest y donde comparo si se completo la peticion etc.

Para darte mas detalles

Código:

function mConsultarServicioWeb(lcCadena1,lcCadena2)
{
if (loHttpRequest) /* este es el objeto xmlHttpRequest ya creado*/
{
var lcCadena = lcCadena1;
var lcNombre = lcCadena2;

loHttpRequest.open("POST", "h..p://......../ServicioAjax.asmx/mObtenerDatos", true);

loHttpRequest.onreadystatechange = function()
{
if (loHttpRequest.readyState == 4)
{
if (loHttpRequest.status == 200)
{
var loDocumentoXml = loHttpRequest.responseXML;
var lcResultado = loDocumentoXml.lastChild.childNodes[0].nodeValue;
//aqui deseo retornar la respuesta... use un return lcResultado pero no funciona
}
else
{
var lcFalla = loHttpRequest.responseText;
alert("Ha ocurrido un error:" + lcFalla);
}
}
}
//Ejecutamos la peticion
loHttpRequest.setRequestHeader("Content-Type","application...");
loHttpRequest.send("lcCadena1=" + lcCadena1 + "&lcNombre=" + lcCadena2);
}
}




cabe mencionar que esa funcion voy a llamarla desde otra de la siguiente forma

Código:

function mMostrarSubMenu()
{
var lcRespuesta = mConsultarServicioWeb('Hola', 'Mundo');
}

como no me funciona el return, la variable lcRespuesta siempre muestra "undefined"

si tienen alguna idea por favor avisenme.

les comento ademas que el servicio web funciona perfectamente, porque lo evaluo con firebug y cada vez que mando a hacer la peticion me mustra la respuesta en la consola

Gracias de antemano.
  #2 (permalink)  
Antiguo 23/03/2009, 20:42
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años, 8 meses
Puntos: 839
Respuesta: crear una clase ajax

Revisa si esto te sirve:
http://www.forosdelweb.com/f13/ajax-...6/#post2836440
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 25/03/2009, 07:46
 
Fecha de Ingreso: agosto-2007
Mensajes: 10
Antigüedad: 17 años, 4 meses
Puntos: 0
Respuesta: crear una clase ajax

eso no me funciona pongo el valor a false y mas bien no me responde, tengo entendido que si haces la peticion sincrona el devolvera la respuesta luego de que se haya producido un postback y es precisamente lo que no necesito. de momento resolvere copiando el codigo cada vez que requiera una funcionalidad ajax. no es lo mas optimo pero funciona
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 19:04.