DOM com XML

É um código pronto, todo comentado, simples de entender!!
Arquivo: Banco.xml

<catalog>
  <cd>
    <titulo>Empire Burlesque</titulo>
    <artista>Bob Dylan</artista>
    <outro01>USA</outro01>
    <ipresa>Columbia</ipresa>
    <preco>10.90</preco>
    <ano>1985</ano>
  </cd>
  <cd>
    <titulo>Hide your heart</titulo>
    <artista>Bonnie Tyler</artista>
    <outro01>UK</outro01>
    <ipresa>CBS Records</ipresa>
    <preco>9.90</preco>
    <ano>1988</ano>
  </cd>
  <cd>
    <titulo>Greatest Hits</titulo>
    <artista>Dolly Parton</artista>
    <outro01>USA</outro01>
    <ipresa>RCA</ipresa>
    <preco>9.90</preco>
    <ano>1982</ano>
  </cd>
  <cd>
    <titulo>Still got the blues</titulo>
    <artista>Gary Moore</artista>
    <outro01>UK</outro01>
    <ipresa>Virgin records</ipresa>
    <preco>10.20</preco>
    <ano>1990</ano>
  </cd>
  <cd>
    <titulo>Eros</titulo>
    <artista>Eros Ramazzotti</artista>
    <outro01>EU</outro01>
    <ipresa>BMG</ipresa>
    <preco>9.90</preco>
    <ano>1997</ano>
  </cd>
</catalog>

 

 

A mágia está toda aqui…
Arquivo: index.html

<script type="text/javascript">
var xmlDoc;

	// Verificando o IE
	if (window.ActiveXObject) {
		xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
	}
	// Verificando o Mozilla, Firefox, Opera, etc.
		else if (document.implementation.createDocument) {
		xmlDoc=document.implementation.createDocument("","",null);
	}
		else {
		alert("Seu site não suporta essa plataforma"); // Caso não tenha suporte a plataforma
	}

	xmlDoc.async = false;
	xmlDoc.load("Banco.xml"); // Carrega o arquivo XML

var x = xmlDoc.getElementsByTagName("CD"); // Carregando a pag principal
	i = 0;

	// Função para avançar os valores
	function avancar() {
		if (i < x.length) {
			i++;
			display();
		}
	}

	// Função para voltar os valores
	function voltar() {
		if (i>0) {
			i–;
			display();
		}
	}

// Função que carrega quando o site é exibido
function display() {
	var artista, titulo, ano;
	// Dando valor para as variáveis
	artista = (x[i].getElementsByTagName("artista")[0].childNodes[0].nodeValue);
	titulo = (x[i].getElementsByTagName("titulo")[0].childNodes[0].nodeValue);
	ano = (x[i].getElementsByTagName("ano")[0].childNodes[0].nodeValue);

	// Caregando o HTML dentro da div Show
	document.getElementById("show").innerHTML="<b>Artista:</b> "+artista+" <b>Título:</b> "+titulo+" <b>Ano:</b> "+ano;
}
</script>
<p id="show" style="font-family: verdana; font-size: 12px">
<input onClick="voltar()" value="<< Voltar" type="button" />
<input onClick="avancar()" value="Avançar >>" type="button" />

2 Comments

  1. Gostaria de saber se consigo recuperar dados xml de um outro servidor, ou seja, tenho um link de um site que faz o calulo de frete dos correios (sedex e PAC) e retorna a resposta em xml, veja exemplo:

    url de chamada = http://frete.w21studio.com/calFrete.xml?cep=726000…&largura=60&altura=5&servico=3

    retorno xml:


    1.0
    Freeware – gratuito
    DF
    Distrito Federal
    Capital
    68.70
    26.80
    OK

    Preciso recuperar estes valores e atribui-los em algumas variáveis em minha página asp, para que meu proprio site retorne estes valores para o cliente(visitante do meu site) onde depois vou dar um input dentro do meu banco de dados.

    Como posso fazer isso ?

    Conto com a colaboração de todos.

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *