我遇到了将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");
但它不起作用。
有什么想法吗?提前谢谢。
答案 0 :(得分:1)
你的意思不起作用?你有什么错误?
您使用的是done
功能吗?
$.get(" http://myserver.com/script.php").done(function(data) {
console.log(data);
});
或者您可以直接使用$.getJSON功能。
答案 1 :(得分:1)
$.getJSON('http://myserver.com/script.php', function(data) {
var json = data;
});
加载json数据。 如果还有其他问题,您可以更准确一些。