Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Eu Gostaria de que quando eu digitasse em um campo de texto aparecesse o que está no arquivo XML (http://sandbox.buscape.com/service/findProductList/59737071446542435a71553d/?keyword=iphone) entre as TAG'S <productName></productName>
Só que meu arquivo não esta fazendo isso. Fica lá, Buscando... Buscando... e nunca aparece nda.
Arquivo.html
<html>
<head>
<title>Pegar Produto</title>
<script src="xml.js"> </script>
<br>
<Br></br>
<input type="text" id="busca" onkeyup="buscarproduto(this.value)" /><br><br>
<div id="resultado"></div>
<br /><br />
<div id="conteudo">
</div>
</head>
<body>
</body>
</html>
Arquivo XML.js
function buscarproduto(valor){
if (valor == ""){
document.getElementById('resultado').innerHTML = '';
}
else {
if(window.XMLHttpRequest) {
req = new XMLHttpRequest();
}
else if(window.ActiveXObject) {
req = new ActiveXObject("Microsoft.XMLHTTP");
}
// Arquivo XML juntamente com o valor digitado no campo (método GET)
var url = "http://sandbox.buscape.com/service/findProductList/59737071446542435a71553d/?keyword=" + valor
//// Chamada do método open para processar a requisição
req.open("Get", url, true);
// Quando o objeto recebe o retorno, chamamos a seguinte função;
req.onreadystatechange = function() {
// Exibe a mensagem "Buscando Produtos..." enquanto carrega
if(req.readyState == 1) {
document.getElementById('resultado').innerHTML = 'Buscando Produto...';
}
// Verifica se o Ajax realizou todas as operações corretamente
if(req.readyState == 4 && req.status == 200) {
// Resposta retornada pelo XML
var resposta = getElementByID("productName")[0].childNodes[0].nodeValue;
// Abaixo colocamos a(s) resposta(s) na div resultado
document.getElementById('resultado').innerHTML = resposta;
}
}
req.send(null);
}
}
Alguem pode me ajudar?
Como fazer pra retornar esses valores?
Mais sem usar PHP. Porque aplicação pra isso não pode usar PHP.
isso é pq o navegador não consegue te trazer os dados de um xml externo, por questões de segurança.