编辑:问题解决了 我正在尝试使用像
这样的变量来分配类型 check = [];
if($("#transport").attr("checked"))
check.push('airport','bus_station','train_station','taxi_stand','travel_agency');
if($("#bars").attr("checked"))
check.push('bar','restaurant');
if($("#tourist").attr("checked"))
check.push('art_gallery','campground','museum','aquarium','zoo','library','amusement_park','park');
if($("#shopping").attr("checked"))
check.push( 'shopping_mall', 'shoe_store', 'jewelry_store', 'grocery_or_supermarket', 'furniture_store', 'electronics_store', 'clothing_store', 'book_store');
var tmp_types = "";
for(i=0;i<1;i++)
{
tmp_types += '"'+check[i]+'"';
}
var request = {
location: latlng,
radius: '50000',
types: [ tmp_types ]
};
service = new google.maps.places.PlacesService(map);
service.nearbySearch(request, callback);
但它不起作用......任何人都可以帮助我......谢谢
解决方案:只需使用check代替tmp_types并删除方括号。就像这种类型:检查..感谢Bruno
答案 0 :(得分:0)
你的for循环退出0,因为你的条件是i < 1
for( var i=0, len = check.length; i < len; i++ ) {
// your code here
}
另外根据API文档,您调用的函数需要请求对象中的 types :
包含一个或多个受支持类型的数组 Google Places API:支持的地方类型列表。
所以只需使用像这样的检查对象
var request = {
location: latlng,
radius: '50000',
types: check
};
更多信息here