使用url XML获取XML元素值

get xml element value using url xml

本文关键字:XML 元素 获取 使用 url      更新时间:2023-09-26

我试图从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_codedataType。如果你的问题解决了,那就接受吧。

<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>