Ich versuche hier mit yahoo ort finder api zu arbeiten. Ich möchte den Breiten- und Längengrad eines bestimmten Ortes geben Name des Ortes. Wenn ich Place Finder api verwende, bekomme ich den Antworttext in xml und versuche, ihn mit Xslt zu stylen.yahoo ort finder api antwort xml display
Mein Problem:
http://where.yahooapis.com/geocode?location=701+First+Ave,+Sunnyvale,+CA&appid=myapiid
ist die GET-Anforderung, wo ich eine XML als Antwort bekommen, die ich mit xslt und Display-Stil haben.
ich habe einen Code hier, die nicht that.I glauben, dass es richtig .I ist immer eine leere Seite
<html>
<head>
<script>
function loadXMLDoc(dname)
{
if (window.XMLHttpRequest)
{
xhttp=new XMLHttpRequest();
}
else
{
xhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xhttp.open("GET",dname,false);
xhttp.send("");
return xhttp.responseXML;
}
function displayResult()
{
xml=loadXMLDoc("http://where.yahooapis.com/geocode?location=701+First+Ave,+Sunnyvale,+CA&appid=MYAPIKEY");
xsl=loadXMLDoc("latitude.xsl");
// code for IE
if (window.ActiveXObject)
{
ex=xml.transformNode(xsl);
document.getElementById("example").innerHTML=ex;
}
// code for Mozilla, Firefox, Opera, etc.
else if (document.implementation && document.implementation.createDocument)
{
xsltProcessor=new XSLTProcessor();
xsltProcessor.importStylesheet(xsl);
resultDocument = xsltProcessor.transformToFragment(xml,document);
document.getElementById("example").appendChild(resultDocument);
}
}
</script>
</head>
<body onload="displayResult()">
<div id="example" />
</body>
</html>
Hier ist mein Stylesheet erhalten:
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
<h2>Latitude Longitute finder</h2>
<table border="1">
<tr bgcolor="#9acd32">
<th>Latitude</th>
<th>Longitude</th>
</tr>
<tr>
<td><xsl:value-of select="Result/latitude"/></td>
<td><xsl:value-of select="Result/longitute"/></td>
</tr>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
Update von Link: Yahoo Antwort
<?xml version="1.0" encoding="UTF-8"?>
<ResultSet version="1.0">
<Error>0</Error>
<ErrorMessage>No error</ErrorMessage>
<Locale>us_US</Locale>
<Quality>87</Quality>
<Found>1</Found>
<Result>
<quality>87</quality>
<latitude>37.416275</latitude>
<longitude>-122.025092</longitude>
<offsetlat>37.416397</offsetlat>
<offsetlon>-122.025055</offsetlon>
<radius>500</radius>
<name></name>
<line1>701 1st Ave</line1>
<line2>Sunnyvale, CA 94089-1019</line2>
<line3></line3>
<line4>United States</line4>
<house>701</house>
<street>1st Ave</street>
<xstreet></xstreet>
<unittype></unittype>
<unit></unit>
<postal>94089-1019</postal>
<neighborhood></neighborhood>
<city>Sunnyvale</city>
<county>Santa Clara County</county>
<state>California</state>
<country>United States</country>
<countrycode>US</countrycode>
<statecode>CA</statecode>
<countycode></countycode>
<uzip>94089</uzip>
<hash>DDAD1896CC0CDC41</hash>
<woeid>12797150</woeid>
<woetype>11</woetype>
</Result>
</ResultSet>
<!-- gws30.maps.re3.yahoo.com uncompressed/chunked Wed Jan 12 16:29:58 PST 2011 -->
Es gibt keine Frage gestellt. Wenn die Frage ist, "ob es richtig oder falsch ist", immer eine leere Seite zu bekommen, denke ich, dass die Antwort ist: Es ist falsch. –
Thnx ich habe die Frage bearbeitet.Ich glaube, es ist richtig.Ich brauche nur etwas Hilfe – simplyblue