【问题标题】:Query and Update fusion table via HTML form?通过 HTML 表单查询和更新融合表?
【发布时间】:2012-04-28 10:24:38
【问题描述】:

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

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

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

提前感谢您的帮助/打击(无论是什么)!

迈克

【问题讨论】:

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


    【解决方案1】:

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

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

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

    【讨论】:

    • 谢谢,这看起来像我需要的,我去看看!
    【解决方案2】:

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

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

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

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

    【讨论】:

    • 感谢您的快速回复!我想我需要更清楚我在寻找什么。我的融合表中不包含地理编码数据,它只有属性数据(地点名称、日期、cmets 等)所以我不想在我的地图中引入任何新图层,我希望能够编写属性信息到我的地图下方的页面中(使用innerHTML)。我不确定这是否是融合表支持的东西,我一直在探索这个选项作为服务器端脚本的替代方案。
    • 哦,那我误解了你的问题,对不起。请参阅 Eric 的回答,这为您提供了一个很好的示例,如何使用 AJAX 和 jQuery 自行查询融合表。为此,我写了一个JavaScript client library,您可以在one of my examples 中看到它的实际效果(只需查看源代码)。
    猜你喜欢
    • 2017-04-13
    • 1970-01-01
    • 2013-05-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-10
    • 2012-04-29
    • 1970-01-01
    相关资源
    最近更新 更多