Ver Mensaje Individual
  #1 (permalink)  
Antiguo 11/10/2007, 10:32
Avatar de Jesica
Jesica
 
Fecha de Ingreso: agosto-2007
Mensajes: 78
Antigüedad: 17 años, 4 meses
Puntos: 0
script que no funciona

Hola gente!
Estoy siguiendo un tutorial de ajax, pero quedé frenada en un ejemplo, (al cual le modifique la parte del servidor) aparentemente, el evento responde, pero no devuelve nada.

les paso el codigo para ver si alguien me puede dar una mano... y tambien la pagina de donde lo saque http://www.w3schools.com/ajax/ajax_responsexml.asp


Código HTML:
<head>
<script src="selectcustomer_xml.js"></script>
</head>
<body>
<form action=""> 
Select a Customer:
<select name="customers" onchange="showCustomer(this.value)">
<option value="ALFKI">Alfreds Futterkiste</option>
<option value="NORTS ">North/South</option>
<option value="WOLZA">Wolski Zajazd</option>
</select>
</form>
<b><span id="companyname"></span></b><br />
<span id="contactname"></span><br />
<span id="address"></span>
<span id="city"></span><br/>
<span id="country"></span>
</body> 

Código HTML:
var xmlHttp
function showCustomer(str)
{ 
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
  {
  alert ("Your browser does not support AJAX!");
  return;
  }
var url="getcustomer_xml.php";
url=url+"?q="+str;
url=url+"&sid="+Math.random();
xmlHttp.onreadystatechange=stateChanged;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}
function stateChanged() 
{ 
if (xmlHttp.readyState==4)
{
var xmlDoc=xmlHttp.responseXML.documentElement;
document.getElementById("companyname").innerHTML=
xmlDoc.getElementsByTagName("compname")[0].childNodes[0].nodeValue;
document.getElementById("contactname").innerHTML=
xmlDoc.getElementsByTagName("contname")[0].childNodes[0].nodeValue;
document.getElementById("address").innerHTML=
xmlDoc.getElementsByTagName("address")[0].childNodes[0].nodeValue;
document.getElementById("city").innerHTML=
xmlDoc.getElementsByTagName("city")[0].childNodes[0].nodeValue;
document.getElementById("country").innerHTML=
xmlDoc.getElementsByTagName("country")[0].childNodes[0].nodeValue;
}
}

function GetXmlHttpObject()
{
var xmlHttp=null;
try
  {
  // Firefox, Opera 8.0+, Safari
  xmlHttp=new XMLHttpRequest();
  }
catch (e)
  {
  // Internet Explorer
  try
    {
    xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
    }
  catch (e)
    {
    xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
  }
return xmlHttp;
}

Código PHP:
echo "<?xml version='1.0' encoding='ISO-8859-1'?>";
echo "<company>";
echo "<compname> AAAA </compname>";
echo "<contname> BBB </contname>";
echo "<address>VVV</address>";
echo "<city> DDDD </city>";
echo "<country> XXX</country>";
echo "</company>";
Desde ya muchas gracias