你们都在做什么?
我是一个完整的Fusion Tables API新手,我一直在设置搜索框。这是我的问题:
目标:我想创建一张地图,显示美式橄榄球队的位置以及比利时美式足球俱乐部的位置。
到目前为止我做了什么:本周我开始使用两种不同的叠加层来创建这张地图(来自两个不同的Fusion桌子:一个' Clubs'表与美国人足球队和一个与美式足球迷俱乐部的球迷一起参加比赛。
我还实施了两个可以打开和关闭每个图层的复选框。
我被困在哪里:随着比利时粉丝俱乐部的数量开始增长,我想添加一个搜索框,让我可以只显示至少有x个成员的粉丝俱乐部。
这"过滤器"当然只适用于那个单一的粉丝'层和团队'图层需要保持不变。
在我的粉丝' Fusion Table I列出了每个粉丝俱乐部的会员数量。
问题:有没有办法建立这样一个搜索框'如果我键入" 50"在搜索框中,它只显示至少有50个成员的粉丝俱乐部?
(基本上,我对表格的查询将取决于我在搜索框中输入的值。)
我已经尝试过几篇文章中的指南,但我完全陷入困境: http://gmaps-samples.googlecode.com/svn/trunk/fusiontables/change_query_text_input.html https://developers.google.com/fusiontables/docs/samples/autocomplete
我已添加了目前为止附件中的代码。如果有人能帮我解决这个问题,我将非常感激:
<html>
<head>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no">
<meta charset="UTF-8">
<h3>American Football in Belgium</h3>
<style type="text/css">
html { height: 100% }
body { height: 100%; margin: 0; padding: 0 }
#map_canvas { height: 100% }
</style>
<script type="text/javascript"
src="http://maps.google.com/maps/api/js?key=AIzaSyDjB2uAt9B6cFcUiJAgANg63qNQtiF6v24&sensor=false"></script>
<script type="text/javascript">
function toggleLayer(this_layer){
if(this_layer.getMap()) {
this_layer.setMap(null)
} else {
this_layer.setMap(map);
}
}
var layer1=null;
var layer2=null;
var map=null;
function initialize() {
map = new google.maps.Map(document.getElementById("map_canvas"), {
center: new google.maps.LatLng(50.809406, 4.498901),
zoom: 9,
mapTypeId: google.maps.MapTypeId.ROADMAP
});
layer1 = new google.maps.FusionTablesLayer({
query: {
select: 'Fans Location',
from:'1_n9DXwEAdVtmHhvypRxpjgk7DMJVbmBbYgsUfdQ'
},
map: map
});
layer2 = new google.maps.FusionTablesLayer({
query: {
select: 'Club Location',
from:'1waRLQMKE1bJKNT4qBesLQUNcjbezPeln6z1XQKA'
},
map: map
});
}
</script></head>
<body onload="initialize();">
<div>
<input type="checkbox" id="show_hide_layer1" checked onchange="toggleLayer(layer1)"/>
<label> Fans </label>
<input type="checkbox" id="show_hide_layer2" checked onchange="toggleLayer(layer2)"/>
<label> Clubs </label>
</div>
<div id="map_canvas" style="width:80%; height:80%"></div>
<script src="http://www.google-analytics.com/urchin.js" type="text/javascript">
</script>
</body>
</html>
非常感谢你的帮助!
周六过得愉快,
安迪
答案 0 :(得分:0)
您想要的查询是:
query: {
select: 'Fans Location',
from:'1_n9DXwEAdVtmHhvypRxpjgk7DMJVbmBbYgsUfdQ',
where: "'Number' > "+numFans
}
在layer1上,所以:
layer1.setOptions({
query: {
select: 'Fans Location',
from:'1_n9DXwEAdVtmHhvypRxpjgk7DMJVbmBbYgsUfdQ',
where: "'Number' > "+numFans
}
});