使用ajax从xml url获取经度和纬度

时间:2013-05-01 11:16:55

标签: javascript jquery xml ajax

这是我的jQuery ajax: -

function getlg(){
    var cntry_code = 'IN';
    var reg = 'Rajkot';
    var xml;
    $.ajax(
    {
        url: "http://services.gisgraphy.com//geocoding/geocode?address="+reg+"&country="+cntry_code+"",
        async: false,
        dataType:'xml',
        success: function(data)
        {
            xml=data;
        }
    });
    var lat = $(xml).find('lat:eq(0)').text();
    alert(lat);
    var lng = $(xml).find('lng:eq(0)').text();  
    alert(lng);
}

我正在尝试传递网址城市名称和国家/地区代码并获取xml文件。 尝试jsfiddle: - http://jsfiddle.net/GbDFD/ 在此xml文件中,我尝试获取第一个latlng元素值。

这是 working url

我尝试在ajax网址中传递城市名称和国家/地区代码,但不会返回纬度和经度值。

如何使用javascript工作。

感谢。

1 个答案:

答案 0 :(得分:4)

您可以使用jsonp,为此您需要在网址中加入format=json

"http://services.gisgraphy.com//geocoding/geocode?address="+reg+"&country="+cntry_code+"&format=json"

这是工作代码:

$.ajax({
    url: "http://services.gisgraphy.com//geocoding/geocode?address=" + reg + "&country=" + cntry_code + "&format=json",
    async: false,
    dataType: 'jsonp',
    success: function (data) {
           var lat = data.result[0].lat;
           console.log(lat);
           var lng = data.result[0].lng;
           console.log(lng);
       }
});

演示 - > http://jsfiddle.net/mohammadAdil/GbDFD/1/