Postagem

Aqui é onde faço postagens de coisas que acho interessante.

Lendo xml com JQuery e Ajax

Postagem do dia 01/01/1970 na categoria Jquery



Exemplo de um xml:

word.xml


<?xml version="1.0" encoding="UTF-8"?>
<array>
    <option>
        <word>Maà§a</word>
        <description>Fruta de Adão e Eva com 4 letras</description>
    </option>
    <option>
        <word>Carro</word>
        <description>Meio de transporte semi-mecà¢nico com 5 letras</description>
    </option>
    <option>
        <word>Cafe</word>
        <description>Os programadores não vivem sem com 4 letras</description>
    </option>
</array>



Agora iremos ler o word.xml


$(document).ready(function(){

    $.ajax({
        url:       'script/word.xml',
        dataType: 'xml',

        // Caso tenha encontrato o arquivo, leio os dados do xml
        success: function(xml){

            // Pegando todos os dados dentro da variavel array do arquivo xml
            $(xml).find('array').each(function() {

                var arrayWord = []; // Variavel para armazenar array de palavras e descricao

                // Pegando todos os dados dentro da variavel option do arquivo xml
                $(this).find('option').each(function(){

                    // Armazenando um array com indice word, description dentro do array arrayWord
                    arrayWord.push(                         
                            [ 
                                { 'word' : $(this).find('word').text(), 
                                  'description' : $(this).find('description').text() }  
                            ]
                        );
                });            

                // Exibindo dados armazenado no array
                console.log( arrayWord[0] );
                console.log( arrayWord[1] );
                console.log( arrayWord[2] );

            }); 
        },

        // Se nao consegui ler o arquivo xml, exibo mensagem de erro no console
        error: function () {
            console.log("Ocorreu um erro inesperado durante o processamento.");
        }
    });

});



Deixe seus comentários abaixo: