jueves, 12 de julio de 2007

Recuperando datos mediante la propiedad responseXML

El atributo responseXML devuelve una referéncia al cuerpo del documento descargado del servidor en una petición con XMLHttpRequest en formato XML.

Utilización

oDocumento = oXMLHttpRequest.responseXML;

oDocumento - Referéncia al cuerpo del objeto recibido.
oXMLHttpRequest - Objeto XMLHttpRequest

La propiedad responseXML se utiliza para tratar los datos recibidos en formato XML desde el servidor, podremos acceder a los datos siempre y cuando el estado de la conexión devuelto con readyStatechange sea igual a 4 (a punto).

Esta propiedad nos devolverá null siempre que la respuesta XMLdel servidor no tenga el encabezado text/xml, application/xml o acabe en +xml.

Utilizaremos las propiedades del Modelo de Objetos de Documento (DOM) para tratar los datos XML recibidos.

Ejemplo

Habiendo creado el objeto XMLHttpRequest oXMLHttpRequest previamente y realizado una petición de un xml con marcas haremos que nos alerte el número de item's.

// Creamos la función
function fFuncion ()
{
// Si el estado es "A punto"
if ( oXMLHttpRequest.readyState == 4)
{
// Accedemos al documento XML
oDocumento = oXMLHttpRequest.responseXML.documentElement;
// Alertamos el numeto de item's
alert ( oDocumento.getElementsByTagName('item').length );
} }
// Definimos la función handler del evento
oXMLHttpRequest.onreadystatechange = fFuncion;

1 comentario:

Anónimo dijo...

muy buena copia de http://www.programacionweb.net/articulos/articulo/?num=391