我试图从xml文件中获取城市数据。
下面是XML响应的url,我从XML响应/文件中获得纬度和经度值。
http://maps.googleapis.com/maps/api/geocode/xml?address=Kenya&传感器= true
这是我的JavaScript代码:-
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script>
function load(){
var reg = "Kenya";
alert(reg);
var xml;
$.ajax({
url: "http://maps.googleapis.com/maps/api/geocode/xml?address="+reg+"&sensor=true",
async: false,
dataType:'xml',
success: function(data)
{
xml=data;
}
});
var lat = $(xml).find('lat:eq(0)').text();
var lng = $(xml).find('lng:eq(0)').text();
var radius = "100000";
alert(lat);
alert(lng);
$.ajax({
url: "http://services.gisgraphy.com/geoloc/search?lat="+lat+"&lng="+lng+"&radius="+radius+"&format=json",
async: false,
dataType:'jsonp',
success: function(data)
{
var asciiname = data.result[0].asciiName;
console.log(asciiname);
}
});
}
</script>
<body onload="load()">
</body>
有了这个,我试图通过区域名称在上面的url与lat和lang值。
http://services.gisgraphy.com/geoloc/search?lat= - 0.0235590,液化天然气= 37.9061930,= 100000半径。
使用这个url,我试图获得asciiName。
但是它不工作,它不显示任何东西。
我做错了什么。帮我解决我的问题。
谢谢。
这是完整的代码细节。在ajax
调用中缺少一些变量,如cntry_code
和dataType
。如果你的问题解决了,那就接受吧。
<script>
function getlg(){
var cntry_code = 'IN';
var reg = 'Rajkot';
var xml;
$.ajax({
url: "http://services.gisgraphy.com//geocoding/geocode?address="+reg+"&country="+cntry_code+"&format=json",
async: false,
dataType:'jsonp',
success: function(data){
var id = data.result[1].id;
console.log(id);
var lat = data.result[1].lat;
console.log(lat);
var lng = data.result[1].lng;
console.log(lng);
var radius = "100000";
$.ajax({
url: "http://services.gisgraphy.com/geoloc/search?lat="+lat+"&lng="+lng+"&radius="+radius+"&format=json",
async: false,
dataType:'jsonp',
success: function(data)
{
for(i=0;i<data.result.length;i++)
{
var asciiname = data.result[i].asciiName;
console.log(asciiname);
}
}
});
}
});
}
</script>