我尝试检索要在Google地图上显示为区域的矩形边界数据。我通过AJAX与Jquery从数据库收集数据。这就是我所拥有的:
AJAX
$.ajax({
url: 'http://localhost/gui/templates/tracking/show_zones.php',
//data: 'userid='+ uid ,
contentType: "application/x-www-form-urlencoded; charset=utf-8",
dataType: "json",
type: "POST",
success: function(json) {
data=json;
for (var i = 0; i < data.length; i++)
{
showZone(data[i].nelat,data[i].swlat,data[i].nelng,data[i].swlng);
}
}
});
和showZone功能:
function showZone(north,south,east,west) {
var rectangle = new google.maps.Rectangle({
strokeColor: '#FF0000',
strokeOpacity: 0.8,
strokeWeight: 2,
fillColor: '#FF0000',
fillOpacity: 0.35,
map: map,
bounds: {
north: north,
south: south,
east: east,
west: west
}
});
}
因此数据完全收到,对于data [i] .nelat,data [i] .swlat,data [i] .nelng,data [i] .swlng我得到值46.187180 45.950665 14.795084 14.425919,这是正确的。如果我在边界变量中手动输入这个数字,我会在所需的区域上得到一个漂亮的矩形。但是,如果我使用此代码,我会收到错误:
&#39; InvalidValueError:setBounds:不是LatLngBounds或LatLngBoundsLiteral:在属性south:不是数字&#39;
这些数字以float(10,6)的形式存储在数据库中,这与谷歌关于PHP / mysql使用地图的手册相对应。我是否还需要以某种方式将数字转换为&#34;正确的&#34;类型或哪里可能是问题?
答案 0 :(得分:1)
有必要将边界变量解析为浮点数:)