0

我有将 Json 检索到我的 Jquery 脚本中的问题。

位于http://myserver.com/script.php的 php 脚本通过回显 JSON 来返回,例如:

{"locations":[{"name":18492554,"lat":"12345","long":"234"},{"name":18492553,"lat":"4567","long":"234},{"name":18492555,"lat":"2234","long":"234}]}

我想将该点绘制到我的 Jqueru 脚本中,例如:

(function() {
    window.onload = function() {

        // Creating a new map
        var map = new google.maps.Map(document.getElementById("map"), {
          center: new google.maps.LatLng(41.6, -0.88),
          zoom: 12,
          mapTypeId: google.maps.MapTypeId.ROADMAP
        });


        ///////////////////// GET the JSON data   ///////////////////
var json =   // ???????



        // Creating a global infoWindow object that will be reused by all markers
        var infoWindow = new google.maps.InfoWindow();

        // Looping through the JSON data
        for (var i = 0, length = json.length; i < length; i++) {

                var data = json[i],
                latLng = new google.maps.LatLng(data.lat, data.long);

            // Creating a marker and putting it on the map
            //var iconBase = 'https://dea-srl.net/domenico/traking/js/';

            var iconBase = 'https://maps.google.com/mapfiles/kml/shapes/';
            var marker = new google.maps.Marker({
                position: latLng,
                map: map,
                title: data.nombre,
                icon: iconBase + 'schools_maps.png'
                });

            // Creating a closure to retain the correct data, notice how I pass the current data in the loop into the closure (marker, data)
            (function(marker, data) {

                // Attaching a click event to the current marker
                google.maps.event.addListener(marker, "click", function(e) {
                    infoWindow.setContent(data.nombre);
                    infoWindow.open(map, marker);
                });


            })(marker, data);

        }

    }

})();

我的问题是让那个 Json 进入 de jquery。有可能的?

我尝试使用 get 方法,例如:

$.get(" http://myserver.com/script.php"); 

但它不起作用。

有什么想法吗?提前致谢。

4

2 回答 2

1

你的意思是行不通?你有什么错误?

你在使用这个done功能吗?

$.get(" http://myserver.com/script.php").done(function(data) {
  console.log(data);
});

或者您可以直接使用$.getJSON函数。

于 2013-05-09T22:12:25.200 回答
1
$.getJSON('http://myserver.com/script.php', function(data) {
  var json = data;
});

加载 json 数据。如果还有其他问题,您可以更精确一些。

于 2013-05-09T22:14:03.683 回答