下面的javascript代码不起作用,它有一个到谷歌融合表的查询。
$('#map_canvas').gmap({ 'center': new google.maps.LatLng(37.447038,-122.160575), 'zoom': 11, 'mapTypeId' : google.maps.MapTypeId.ROADMAP, 'callback': function(map) {
$('#map_canvas').gmap('loadFusion', { 'query': {
'from': '297050' ,
'orderBy': ST_DISTANCE('Address', LATLNG(37.447038,-122.160575)),
'limit':10 } });
var t = setTimeout(function() {$('#dialog').dialog('close');}, 2000);
}
});
如果我删除带有orderby子句的查询行(如下所示),就可以正常工作
$('#map_canvas').gmap({ 'center': new google.maps.LatLng(37.447038,-122.160575), 'zoom': 11, 'mapTypeId' : google.maps.MapTypeId.ROADMAP, 'callback': function(map) {
$('#map_canvas').gmap('loadFusion', { 'query': {
'from': '297050' ,
'limit':10 } });
var t = setTimeout(function() {$('#dialog').dialog('close');}, 2000);
}
});
请建议hot修复此查询
"orderBy"属性似乎是一个字符串。代替:
'from': '297050' ,
'orderBy': ST_DISTANCE('Address', LATLNG(37.447038,-122.160575)),
'limit':10 } });
尝试(注意orderBy属性周围的双引号("):
query: {
select: 'Address',
from: 297050,
orderBy: "ST_DISTANCE('Address', LATLNG(37.447038,-122.160575))",
limit:5
},
工作示例