Google api 搜索框Google Fusion Table/Google API
我有一个包含地块图层的Google Fusion表。每个地块都分配了一个ARN编号。我正在尝试创建一个搜索框,人们可以在其中键入ARN编号,它将选择并希望缩放到该地块。我不熟悉java脚本,不确定为什么我的搜索框不工作。融合表有一个包含空间信息的“几何”列,“ARN”列是一个包含ARN编号的“数字”字段。这是我的密码Google api 搜索框Google Fusion Table/Google API,google-api,google-fusion-tables,search-box,Google Api,Google Fusion Tables,Search Box,我有一个包含地块图层的Google Fusion表。每个地块都分配了一个ARN编号。我正在尝试创建一个搜索框,人们可以在其中键入ARN编号,它将选择并希望缩放到该地块。我不熟悉java脚本,不确定为什么我的搜索框不工作。融合表有一个包含空间信息的“几何”列,“ARN”列是一个包含ARN编号的“数字”字段。这是我的密码 function changeMapl0() { var searchString = document.getElementById('search-string-l'
function changeMapl0() {
var searchString = document.getElementById('search-string-l').value.replace(/'/g, "\\'");
layer.setOptions({
query: {
select: 'geometry',
from: 'tableID',
where: "'ARN' CONTAINS IGNORING CASE '" + searchString + "'"
}
});
}
<body>
<div style="margin-top: 10px;">
<label>Enter Roll Number</label><input type="text" id="search-string-l">
<input type="button" onclick="changeMapl0()" value="Search">
</div>
</body>
函数changeMapl0(){
var searchString=document.getElementById('search-string-l').value.replace(/'/g,“\\'”);
layer.setOptions({
查询:{
选择“几何体”,
from:'tableID',
其中:“'ARN'包含忽略大小写”“+searchString+””
}
});
}
输入卷号
任何帮助都将不胜感激
谢谢,
Matt如果您想执行类似操作,则必须调用zoom2query函数。您可能需要计算地块质心的纬度和长度以实现缩放功能,请确保在地图上称您为“几何体列”,这样您就没有点了
function changeMap() {
var searchString = document.getElementById('search').value.replace("'", "\\'");
if(searchString == "") {
var query="SELECT 'Lat' FROM " + tableid;
}
else {
var query="SELECT 'Lat' FROM " + tableid + " WHERE 'PARCEL_ID' = '" + searchString + "'";
}
// layer.setQuery(query);
if(searchString == "") {
var query="SELECT 'Lat','Long' FROM " + tableid;
}
else {
var query="SELECT 'Lat','Long' FROM " + tableid + " WHERE 'ARN' = '" + searchString + "'";
}
zoom2query(query);
}
var infowindow = new google.maps.InfoWindow();
function zoom2query(query) {
// zoom and center map on query results
//set the query using the parameter
document.getElementById("query").innerHTML = query;
var queryText = encodeURIComponent(query);
var query = new google.visualization.Query('https://www.google.com/fusiontables/gvizdata?tq=' + queryText);
//set the callback function
query.send(zoomTo);
}
function zoomTo(response) {
if (!response) {
alert('no response');
return;
}
if (response.isError()) {
alert('Error in query: ' + response.getMessage() + ' ' + response.getDetailedMessage());
return;
}
numRows = response.getDataTable().getNumberOfRows();
numCols = response.getDataTable().getNumberOfColumns();
var lat = response.getDataTable().getValue(0,0);
var lng = response.getDataTable().getValue(0,1);
var zoom_level = 19;
var location = new google.maps.LatLng(lat,lng);
map.setCenter(location);
map.setZoom(zoom_level);
}
这是我所做的一个例子,我们有RP编号,但我的缩放到包裹
你们的桌子是什么?几何图形列中有哪些数据?是KML吗?你在找类似的东西吗?