Leer un fichero XML con jQuery

Hace un tiempo estuve buscando una solución para leer un archivo xml, la idea es leer sus nodos y los atributos con jQuery,  por ahí encontre una solución muy sencilla para este proposito.

Existe un problema al tratar de ejecutarlo en IE, tambien encontre una solución para eso.

Primero que nada generaremos el fichero xml.

mi.xml

<?xml version=’1.0′ encoding=’UTF-8′?>
<items>
<item id=”1″ nombre=”Ricardo Gatica”>
<books since=”2005″>PHP Book</books>
<books since=”2005″>MySQL Book</books>
</item>
<item id=”2″ nombre=”Victor San Martin”>
<books since=”2006″>Javascript Book</books>
<books since=”2007″>CakePHP Book</books>
</item>
</items>

Ya tenemos nuestro archivo xml estructurado con dos personas (nosotros), cada uno tiene dos libros, bueno ahora leerlo con jQuery, la version que se utilizo fue la 1.2.6.

$.ajax({
  type: 'GET',
  url: 'mi.xml',
  cache: false,
  dataType: ($.browser.msie) ? 'text' : 'xml', // Reconocemos el browser.
  success: function(data){
    var xml;
    if(typeof data == 'string'){
      xml = new
      ActiveXObject('Microsoft.XMLDOM');
      xml.async = false;
      xml.loadXML(data);
    } else {
      xml = data;
    }

    $(xml).find('item').each(function(){
     var id = $(this).attr('id');
     var nombre = $(this).attr('nombre');

      $(this).find('books').each(function(){
        var since = $(this).attr('since');
        var libro = $(this).text();
      });
    });
  }
});

Ya con esto tenemos para jugar con las variables declaradas (id, nombre, since, libro).

Acerca de Ricardo Gatica

Soy estudiante de 2 año de Ingeniería en Informatica en la Universidad Tecnológica de Chile (Inacap), actualmente trabajando en CIMM T&S (Centro de Investigaciones Minera y Metalurgica) en un proyecto de monitoreo ambiental para las mineras llamado SIMON. Soy desarrollador de Sitios Web hace 6 años y de Aplicaciones Web hace 3, he trabajado en diferentes empresas y freelance como webmaster. Curriculum Nombre: Ricardo Gatica M. R.U.N.: 16.067.379-6 Nacionalidad: Chileno. Estado civil: Soltero
Esta entrada fue publicada en Recursos y Desarrollo Web y etiquetada , , , . Guarda el enlace permanente.

9 respuestas a Leer un fichero XML con jQuery

  1. Pingback: Leer un archivo XML con jQuery | Codigos Utiles

  2. JuanPablo dijo:

    hola,
    estaba probando tu código y funciona, pero si cambias la url de una local a una remota deja de funcionar,
    alguna idea ?

    gracias.

  3. matias dijo:

    hola, estoy probando el código, fijate que en la segunda etiqueta item, “item” está escrito “iten” y queda como una etiqueta sin par.

    saludos.

  4. Gracias, ya corregí el problema :D

  5. Ivan dijo:

    lo probe con mi propio XML y funciona barbaro !!
    hasta en IE6 funciona !! jaja
    buenisimo!
    se agradese !

  6. Martin dijo:

    Hola Juan Pablo, las funciones ajax fueron programadas de tal manera que no se pueda pedir datos de otro dominio que no sea el mismo desde el cual se ha descargado la pagina que contiene el script., espero que se entienda ya que lo que acabo de escribir apenas lo entiendo yo jajajaa… (lo q pasa es q es casi horario de almuerzo jaja)

  7. Arcangel dijo:

    Tambien tengo la misma consulta de como poder leer un xml de una url remota.
    atento a sus comentarios.
    Gracias

  8. Jose Paredes dijo:

    Buenisimo, es lo que buscaba, muchas gracias!!!

  9. Esperamos sus comentarios,

    Saludos

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

*

Puedes usar las siguientes etiquetas y atributos HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>