【问题标题】:JSON data from google spreadsheet来自谷歌电子表格的 JSON 数据
【发布时间】:2013-04-20 07:01:24
【问题描述】:

我浏览了this fiddle,其中包含三个带有 json 数据的下拉列表。我有一个示例谷歌spreadsheet here。现在可以将此电子表格数据呈现为 fiddle 中给出的 json 格式的示例。我知道我们可以将电子表格转换为 json,

 var query = new google.visualization.Query('http://spreadsheets.google.com/tq?key=0AozvCNI02VmpdDkwR3RETmczbTI4ZFJhTXJkZHlUbEE#gid=0');
 query.send(handleQueryResponse);
 }
 function handleQueryResponse(response) {
    data = response.getDataTable();
    }

但是使用这个下拉菜单不起作用。

【问题讨论】:

    标签: json drop-down-menu google-sheets type-conversion


    【解决方案1】:

    我不确定您的操作方式,但可以通过不同的方式完成。请使用您的示例数据查看this fiddle,并在下面查看代码。

    基本上,您可以使用以下 HTML 脚本标签从电子表格中调用 JSON 数据。

    <script src="http://spreadsheets.google.com/feeds/list/0An1-zUNFyMVLdEFEdVV3N2h1SUJOdTdKQXBfbGpNTGc/1/public/values?alt=json-in-script&amp;callback=importGSS"></script>
    

    请注意,我正在链接到您电子表格的副本,因为它要求已发布

    然后您可以使用以下脚本处理数据。

    function importGSS(json){
        for(var i = 0; i < json.feed.entry.length; i++){
            var entry = json.feed.entry[i];
            $('#departments').append('<option>' + entry.gsx$subdivision.$t + '</option>');
            $('#subject').append('<option>' + entry.gsx$section.$t + '</option>');
            $('#services').append('<option>' + entry.gsx$station.$t + '</option>');
        }
    }
    

    您显然可以适应自己的需求。

    【讨论】:

    • 我需要类似的东西。但也希望在下拉列表中使用迭代链接和唯一值。
    • 如果没有更详细的描述,恐怕我无法想象您所追求的。我上面的代码非常简单,所以我希望它能让你走上实现目标的正确轨道
    • 请通过this sample 在第一个下拉列表中选择 IT 时,它会在第二个下拉列表中显示其子项。同样,在选择会计时,它会显示其子项等。但在该示例中,数据是硬编码的 json。但是是否可以从 Google 电子表格数据中创建相同类型的下拉菜单?
    • 我明白你的意思,但我没有时间编写你需要的确切代码。为了得到你想要的,我会通过附加你的第一个下拉选项来做到这一点,前提是它不存在。然后将第二个下拉选项附加到相关的第一个下拉选项的类别中,并且同样将第三个选项附加到具有关联的第二个下拉选项的类别中。然后将第二个和第三个下拉菜单中的所有选项设置为隐藏。然后选择选项后,然后将该选项的类设置为可见。希望对您有所帮助。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-01-11
    • 2014-07-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多