通过HTML表单查询和更新融合表?

时间:2012-04-17 04:41:22

标签: javascript google-maps google-maps-api-3 google-fusion-tables

我是谷歌地图和融合表的新手。我想知道是否可以从融合表返回查询信息并使用innerHTML之类的内容将其写入页面。此外,我希望能够使用标准HTML表单更新融合表。这有可能,如果是这样,你能指出我正确的方向吗?我一直在搜索没有结果,但可能只是因为我不知道如何提出这个问题。让我尽可能地解释我正在寻找的东西:

我有一个带有kml折线图层的谷歌地图。我希望能够在HTML表单中输入查询(例如日期范围,功能ID等),或者单击具有与Fusion表中的ID对应的ID的行功能,然后运行将返回相应表条目的属性数据的查询。请注意,融合表没有地理编码信息,我只是将它用作电子表格(我想我理解融合表比谷歌电子表格更容易查询/访问,但如果我错了请纠正我)。

表单输入非常自我解释 - 我希望能够在表单中输入一些信息并在融合表中创建一个新行。

预先感谢帮助/打击(无论哪个)!

麦克

2 个答案:

答案 0 :(得分:4)

“我希望能够将属性信息写入地图下方的页面(使用innerHTML)。”

使用“未记录的”Fusion Table JSNOP API确实可以 。我经常使用这种方法。我在这个答案中对此进行了描述,并发布了几个例子:https://stackoverflow.com/a/9778985/1211981

正如Odi所解释的那样,浏览器的更新/插入更加复杂。

答案 1 :(得分:1)

您的用例有几种可能的解决方案。我想你想要一个只运行JavaScript的解决方案,它在浏览器中运行,没有服务器端代码。

要在Google地图上显示Fusion Table中的数据,您应该使用FusionTablesLayer,这使得此任务非常简单明了。好的examples from Google,例如如何change a query使用表单或create custom InfoWindows(这将是显示与地图上点击的内容相对应的数据的首选方式)。如果您不想关心身份验证,只需将表公开,那么应该很容易使示例适应您的表。

另一件事是将数据写入Fusion Tables:这并不容易,因为在这里必须关心身份验证,有关详细信息,请参阅OAuth guide。但目前无法将数据直接从浏览器写入Fusion Table。但是有希望:使用新的Trusted Tester API,您实际上可以执行此操作,但在开始之前必须join this group

如果您不能/不想使用新API,请考虑server-side approach that I explained here使用脚本转发您的请求。